Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Pouze tento týden sleva až 80 % na e-learning týkající se C a C++. Zároveň využij akce až 80 % zdarma při nákupu e-learningu - více informací.
c++ week
Avatar
Libor Šimo (libcosenior):28.11.2015 13:23

Prosím Milana Křepelku, aby sem nepísal.
Mám v triede, ktorá obsluhuje celý program (nie main) metódu:

public void ZoradKolekciu<T>(ObservableCollection<T> kolekcia, ???)
{
    kolekcia = new ObservableCollection<T>(kolekcia.OrderBy(a => a.Meno));
}

a potrebujem do parametru metódy (???) dať konkrétnu premennú (Meno) triedy (opakuje sa aj v ostatných triedach, ktoré sú v kolekciách) zo všeobecnej kolekcie<T>.
Je to vôbec možné?

Odpovědět
28.11.2015 13:23
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Libor Šimo (libcosenior)
Jan Vargovský:28.11.2015 18:24

Je to vôbec možné?

Ano je. Moje otázka je spíše proč to chceš dělat. To ti nestačí tohle?

kolekcia = kolekcia.OrderBy(a => a.X)

Nebo chceš, aby místo toho X si tam měl nějaký string? Jestli ano, uveď mi důvod proč, protože dělat to je celkem zbytečné.

 
Nahoru Odpovědět
28.11.2015 18:24
Avatar
Odpovídá na Jan Vargovský
Libor Šimo (libcosenior):28.11.2015 18:34

Jane, problém je v tom, že a."X" nefunguje, pretože metóda by mala umožniť pristúpiť k viacerým kolekciám.

Nahoru Odpovědět
28.11.2015 18:34
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Jan Vargovský
Redaktor
Avatar
Jan Vargovský:28.11.2015 18:47

Tak si tam vyextrahuj interface, když mají všechny prvky z těch kolekcí něco společného a pak si tam dej omezení k té metodě.

Osobně bych to nedělal, protože LINQ je dle mého názoru dost přehledný a bohatě to stačí takhle:

kolekcia = kolekcia.OrderBy(a => a.X)
kolekcia2 = kolekcia2.OrderBy(a => a.X)
kolekcia3 = kolekcia3.OrderBy(a => a.X)
...
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět
28.11.2015 18:47
Avatar
Odpovídá na Jan Vargovský
Libor Šimo (libcosenior):28.11.2015 18:49

Tak to mám spravené, ale hľadal som inú možnosť. ;-)

Nahoru Odpovědět
28.11.2015 18:49
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.