Unul din lucrurile de care m-am'am întrebat o mulțime de lucruri despre pe acest site este LINQ. Întrebările I'le-am pus au fost de largă și variată și de multe ori nu't au mult contextul în spatele lor. Deci, într-o încercare de a consolida cunoștințele I'am dobândit pe Linq I'm a posta aceasta intrebare cu scopul de a menține și actualizarea cu informații suplimentare, astfel cum am continua să învețe despre LINQ.
De asemenea, sper că se va dovedi a fi o resursă utilă pentru alte persoane care doresc să învețe despre LINQ.
De MSDN:
LINQ Proiect este un nume de cod pentru un set de prelungiri .NET Cadru care să cuprindă limba de interogare, set, și transforma operațiuni. Se extinde C# și Visual Basic cu limba maternă sintaxa pentru interogări și oferă clasa biblioteci pentru a profita de aceste capacități.
Ce înseamnă acest lucru este că LINQ oferă o modalitate standard de a interoga o varietate de surse de date, folosind o sintaxă comună.
În prezent, există câteva diferite LINQ furnizorii de servicii oferite de Microsoft:
Există destul de câteva altele, multe dintre care sunt enumerate aici.
Chook oferă o modalitate de a output CSV files Jeff arată cum să eliminați duplicatele dintr-o matrice]13 Bob devine o distinct listă ordonată de un datatable Marxidad arată cum să rezolve un array]16 Dana primeste ajutor de punere în aplicare a Quick Sort Folosind Linq
Un rezumat de link-uri de la GateKiller's cauză sunt mai jos: Scott Guthrie oferă o introducere în Linq pe blog]19 O imagine de ansamblu a LINQ pe MSDN
ChrisAnnODell sugerează verificarea:
Linq este disponibil în prezent în VB.Net 9.0 și C# 3.0 deci'll nevoie de Visual Studio 2008 sau mai mare pentru a obține toate beneficiile. (Ai putea întotdeauna să scrie cod în notepad și compila folosind MSBuild exe)
Există, de asemenea, un instrument numit LinqBridge, care vă va permite să rulați Linq ca interogări în C# 2.0.
Această întrebare are unele modalități de a folosi LINQ
LINQ to entități:
Am'am multe mai am etichetat pe Delicious.com.
[2]: http://channel9.msdn.com/shows/Going+Deep/ADONET-Entity-Cadru-Ce-Cum-de Ce/
http://www.aspnetpro.com/articles/2009/04/asp200904zh_f/asp200904zh_f.asp
IMHO, un trecut cu vederea, dar cel mai important beneficiu este cel de codificare eficiența de LINQ, e.g cât de mult poate fi realizat cu atat de putin cod. Personal, găsesc sintaxa de interogare ușor de citit și de înțeles.
Cred că răspunsul la "Ce arome de LINQ sunt acolo?" este incompletă. Mai întâi de toate, vă puteți crea propria dvs. "aroma". Da, este o sarcină complexă, dar există o mulțime de diferite LINQ implementări acum.
Aici este lista de existente LINQ adulti (plus unele mai multe resurse de învățare LINQ) pe Charlie Calvert's blog: Link-uri către LINQ.
Și, de asemenea, există o excelentă serie de posturi pe blog de Matt Warren despre cum să creați propriul dvs. de LINQ Furnizor de: LINQ: Construirea unei IQueryable furnizor de serie
Unele limitări privind utilizarea LINQ to SQL:
A Microsoft într-adevăr ucis LINQ la SQL?
Nu's, de asemenea, unele controversele despre prima versiune a Entity Framework, inclusiv o petiție.
Pentru Linq Practică
Daca vrei ceva practica pe LINQ cu exerciții și răspunsuri, într-adevăr ușor de configurat și, în opinia mea, minunat:
https://github.com/walkhard/linq-exercises
Descarcă de la git, deschis în Visual Studio. Treaba ta este de a face teste trece.
[dezvăluire: am învățat unele linq la ea și am contribuie la proiect, deci da, cred că-l's un minunat, rapid si eficient mod de a învăța.]