Sortowanie listy bez tworzenia nowej instancji

0

Witam,

Mam w aplikacji sytuację, która wymaga sortowania:

cards = cards.OrderBy(a => a.Order).ThenByDescending(a => a.GetValueSort()).ToList();

Jak widać sortuję listę po dwóch wartościach - kolejności oraz potem po pewnej wartości.
Niestety sposób ten tworzy nową instancję listy cards. Zależy mi aby instancja była ta sama, gdyż wykorzystuję wskaźnik do tej listy w innej klasie. Zmiana instancji rozwala program.

Wyczytałem, że rozwiązaniem jest wykorzystanie metody "Sort" w liście, ale nie umiem posortować w ten sposób wykorzystując dwóch pól - order, a następnie Value zwracanego przez funkcję.
Proszę o pomoc.

Pozdrawiam.

0

http://stackoverflow.com/questions/7099741/c-sharp-list-sort-by-two-columns

ale to co robisz z tym "wzkaznikiem" (bo masz referencje a nie wskaznik) jest dosc niebezpieczne i nierozsadne

Nie znam architektury Twojego programu, ale sadze, ze lepszym rozwizaniem bedzie odpalic jakis event i wylapac go tam gdzie chcesz. W evencie moglbys wyslac obiekt ktory jest posortowany (choc tez slabe rozwiazanie... ale najmniej bedzie wymagalo implementacji z jakakolwiek architektura)

Mozesz miec tez klase ktora zarzadza tymi dwoma klasami i ona bylaby "lacznikiem" miedzy tymi dwoma klasami.

1 użytkowników online, w tym zalogowanych: 0, gości: 1