Jel hoces da mesas sql tabele sa POCO objektima ili samo da imas svoj objektni model koji ces da ispitujes sa LINQom?
Ako je ovo prvo, onda tesko, iskreno iako L2S dizajner dozvoljava custom klase u modelu one su predivdjenje za koriscenje u IQueryable klontekstu, nisam nikad ni pokusavao da recimo joinujem SQL tabelu sa nekim IEnumerable<T> ali ne vidim ni kako bi moglo da radi sem da L2S svuce cele tabele na klijenta i onda uradi join u lokalu (a to je uzas). Sto se tice samog l2s dizajnera mislim da bi svaki query sa custom objektom u modelu zavrsio sa "Invalid object name" SQLException jer L2S verovatno ocekuje da taj objekat postoji u storage-u.
Ako medjutim samo imas svoj popunjeni objektni model onda ti L2S ni ne treba, koristis obican LINQ, linq moze da iterira SVE IEnumerable i IEnumerable<T> liste i sve ekstenzije koje postoje za IQueryable (select, distinct, where, etc) postoje i za IEnumerable. AKo bas hoces da imas vizuelno editovanje tog klasnog modela onda ti treba jaci visual studio i koncept zvan "class diagram" u njemu mozes vizuelno da napravis mnogo detaljniji objektni model nego sto to dozvoljava L2S designer.
Code (csharp):
List
<Firma
> firme
= new List
<Firma
>
{ new Firma
{ Naziv
= "Petoletka",
Radnici
= new List
<Radnik
> { new Radnik
{Ime
= "pera", Pozicija
= "Lozac"},
new Radnik
{Ime
= "zika", Pozicija
= "Direktor"}
}},
new Firma
{ Naziv
= "Prvomajka",
Radnici
= new List
<Radnik
> { new Radnik
{Ime
= "koja", Pozicija
= "Lozac"},
new Radnik
{Ime
= "seka", Pozicija
= "Sekretarica"}
}}
};
var x
= from f
in firme
from r
in f
.Radnici
where r
.Pozicija == "Lozac"
select r
.Ime;
foreach (var p
in x
) Console
.WriteLine(p
);
Console
.ReadLine();
U krajnjoj liniji, ako treba da mesas, nista tebe ne sprecava da podleis query u dva dela, prvi IQueryable L2S koji "razvijes" u IEnumerable i onda fga upotrebis u lokalu zajedno sa lokalnim objektima. Samo oprezno sa kolicinom prevucenih podataka (tj razmisli dal mozda imas neko bolje resenje za taj problem)
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić