banjalukaforum.com
https://banjalukaforum.com/

.Net 2.0 List<T> filtriranje
https://banjalukaforum.com/viewtopic.php?f=18&t=32160
Stranica 1 od 1

Autoru:  LucaToni [ 28 Avg 2007, 10:35 ]
Tema posta:  .Net 2.0 List<T> filtriranje

Da li je neko koristio objekat klase List<T> ili BindingList<T> kao data source? Ako jeste, na koji nacin se rjesava dinamicko pretrazivanje (filtriranje prikaza) prikaza podataka (dataGridView ili ListBox) ako je ovakav objekat postavljen kao data source.
Da li se moze koristiti postojeci metod??? Ili je neophodno praviti neku customized view class-u??

Autoru:  Vertygo [ 28 Avg 2007, 13:18 ]
Tema posta: 

Ako koristiš .NET framework 3.0 i Linq to se moze lako izvesti preko generickih lista ... dosta primera za Linq mozes naci na:

http://msdn2.microsoft.com/en-us/vcsharp/aa336746.aspx

A ako koristiš .Net framework 2.0 stvari stoje malo drugacije.
Možda ti može pogodovati jedna od ove tri klase/biblioteke:
http://cheeso.members.winisp.net/srcvie ... ionView.cs
ili
http://www.codeproject.com/csharp/ReflectiveFilter.asp
ili
http://www.codeproject.com/csharp/customcollection.asp

Nadam se da sam ti pomogao :) ...

Autoru:  RAbbit [ 29 Avg 2007, 07:15 ]
Tema posta: 

Koristi predikate
http://blogs.msdn.com/brada/archive/200 ... 36460.aspx
http://msdn2.microsoft.com/en-us/library/bwabdf9z.aspx
http://msdn2.microsoft.com/en-us/library/x0b5b5bc.aspx

Autoru:  LucaToni [ 29 Avg 2007, 10:31 ]
Tema posta: 

Hvala za instrukcije. Da bi koristio LINQ treba mi .Net Framework 3.0 instaliran ili .Net Framework 3.5 (??), dalje, kako radim u Visual Studio 2005 IDE, da li mogu da koristim LINQ ili je isti namjenjen dolazecem VS 2008?

Autoru:  Vertygo [ 29 Avg 2007, 12:24 ]
Tema posta: 

Ugl. ja imam .net framework 3.0, VS 2005 i Linq CTP May 2006 (download: http://www.microsoft.com/downloads/deta ... laylang=en)
i sve radi perfektno.
Prilikom "deploymenta" ne trebas instalirati Linq na druge masine jer se svi DLL-ovi vezani za Linq nalaze u output direktorijumu projekta (znaci kopiraju se na masinu putem xcopy-a, setupa ili ... ) ... to ces i sam da primetis ...
Da bi mogao vrsiti upit nad listom moras dodati sledece reference u biblioteci/projektu:
System.Data.DLinq
System.Data.Extensions
System.Query
System.Xml.XLinq

sve ovi "assembly"-i ce se pojaviti u output direktorijumu projekta.

Laganim testom mozes da utvrdis da li je sve u redu:

Kod:
            List<int> brojevi = new List<int>();

            brojevi.Add(-1);
            brojevi.Add(0);
            brojevi.Add(1);
            brojevi.Add(2);
            brojevi.Add(3);

            var filterLista =
                from br in brojevi
                where br < 2
                select br;

            MessageBox.Show(filterLista.Count<int>().ToString());


Isto zelim da se nadovezem na rabbita da su u sustini predikati SQL-izovani u Linq-u (predikati = where naredba u Linq) i da je zbog izvodjenja vise operacija nad objektima u memoriji lakse koristiti Linq, inace moj kod sa predikatom bi izgledao ovako:

Kod:
            List<int> brojevi = new List<int>();

            brojevi.Add(-1);
            brojevi.Add(0);
            brojevi.Add(1);
            brojevi.Add(2);
            brojevi.Add(3);

            var filterLista = brojevi.Where(br => br < 2);

            MessageBox.Show(filterLista.Count<int>().ToString());


PS: mozda ti se posle instalacije .NET frameworka 3.0 uzurpira intellisence u VS sto mene zna ponekad jako nervirati :) ...

Autoru:  che.guevara [ 29 Avg 2007, 22:49 ]
Tema posta: 

E sto volim ovo funkcionalno programiranje... C# je sad baš, baš zanimljiv... Cijenim i to šarenilo ali i Javinu jednostavnost - KISS fazon ("Keep it simple, stupid"). Oldschool Javašima su smetali i "dženerici" a bogme i anotacije :) Draže im pisati XML fajlove ...

A C# je bas fino "obradio" Python! Stvarno, moracu da isprobam to čudo, samo da se dokopam interneta... Izvinite na offtopicu ali stvarno mi se svidjaju ove dopune ;) Znam iz pythona da se dosta toga moglo uraditi u jednoj liniji, recimo ovo:
Kod:
var filterLista =
                from br in brojevi
                where br < 2
                select br;

u Pythonu glasi:
Kod:
filterLista = [x for x in brojevi if x<2]
# ili funkcionalno
filterLista = filter(lambda x: x<2, brojevi)

Što je dosta ljepše, jel ;)

Autoru:  Vertygo [ 29 Avg 2007, 23:37 ]
Tema posta: 

Kao sto rece .NET iz dana u dan asimilira dobre stvari iz drugih jezika to se definitivno da primetiti ...
Isto tako znam da postoji i Iron Python tj Python za .NET developere pa cak i PHP za .NET platformu :) ...

Autoru:  che.guevara [ 29 Avg 2007, 23:42 ]
Tema posta: 

Ma nije to ništa... Pogledaj PyPy - Python za Python :lol: :lol: :lol:

http://pypy.org/

Dok je Python priskočio .NET-u, čini mi se da je (J)Ruby mnogo bliži Javi.

Stranica 1 od 1 Sva vremena su u UTC [ DST ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/