LINQ Syntax?

09/10/2009 - 08:54 von leslie eldrige | Report spam
Hallo Zusammen,

Gestern habe ich mich das erste Mal ernsthafter mit LINQ beschàftigt. Ich
muss eine Datensammlung einer Quelle mit der Datensammlung einer anderen
Quelle vergleichen und nur die Datensàtze berücksichtigen, die in der zweiten
Datenquelle nicht enthalten sind (eigentlich ist es nur eine simple suche
nach neuen Datensàtzen).

Eine programmatische Umsetzung hat mir nicht so gut gefallen, also dachte
ich mir an SQL. Aber obwohl ich beim Programm auch eine SQL Datenbank
verwende, hat mir auch die Idee nicht so gut gefallen, weil ich alle
Datensàtze von der Quellen holen müsste, sie auf SQL speichern würde um
schliesslich über SQL Abfrage die entsprechende Datensàtze zu generieren.

Da kam mir dan LINQ in Sinn. Nach ca. 1-2 Stunden habe ich es dann zum
Laufen gebracht. Zuerst einmal über DataTable. Irgendwann mal habe ich
mitbekommen, dass man jegliche Art von Datenvariablen als Tabelle verwendne
kann, etwa ein ArrayList Datentyp oder List usw. Dies ist toll, weil meine
Daten gerade in Form einer ArrayList vorliegen :)
Somit habe ich jetzt eine quasi SQL (LINQ) Abfrage auf zwei ArrayList
Variablen gemacht!

Nun was mich jetzt aber interessiert ist die LINQ Syntax bzw. gibt es ein
gutes Tutoial, dass LINQ Syntax anhand SQL Syntax erklàrt (dies weil ich
viele Jahren mit SQL arbeite und mir ein Bezug auf SQL viel einfacher wàre)?
Zwar habe ich die aktuelle Abfrage hinbekommen, jedoch hat mich das viel zu
viel Zeit gekostet. Ich würde gerne die Grundsyntax erklàrt haben, dann kann
ich auf dem gut aufbauen.

Danke schon Mal im Voraus.

les

PS: Eigentlich habe ich den Bogen um LINQ gemacht, weil ich an dem
Server/Client Konzept halte und LINQ würde für mich keinen Sinn machen. Das
ist auch so, jedoch denke ich jetzt, dass der Sinn und Zweck von LINQ gar
nicht die Server/Client Strategie ist, sondern eben gerade solche Aufgaben,
die ich jetzt habe. Das heisst Berechnungen durchzuführen, die eben mit einer
SQL (àhnlicher) Sprache viel besser zu beweltigen sind, als mit herkömliche
prozeduralen Sprache. Weiterer Vorteil ist, dass alles temporàr im Speicher
liegt (z.B. DataTable), was bei einer Datenbank in der Regel nicht der Fall
(meistens werden die Daten in die echten Tabellen gespeichert).
 

Lesen sie die antworten

#1 Elmar Boye
09/10/2009 - 18:20 | Warnen spam
Hallo Leslie,

"leslie eldrige" schrieb...
Nun was mich jetzt aber interessiert ist die LINQ Syntax bzw. gibt es ein
gutes Tutoial, dass LINQ Syntax anhand SQL Syntax erklàrt (dies weil ich
viele Jahren mit SQL arbeite und mir ein Bezug auf SQL viel einfacher wàre)?



Linq verwendet zwar àhnliches Schlüsselworte wie SQL,
das sollte aber nicht zu falschen Schlüssen verleiten.
Zunàchst ist der Kern funktionale Programmierung.
Eric Whites Tutorial - existiert leider nur für C#:
http://blogs.msdn.com/ericwhite/pag...orial.aspx
wo sich mehr konzeptionelles findet als in:

Erste Schritte mit LINQ in Visual Basic
http://msdn.microsoft.com/de-de/lib...97910.aspx

und man danach bei LINQ to Objects weitergucken:
http://msdn.microsoft.com/de-de/lib...97919.aspx

und erst darauf zu ADO.NET / XML übergehen.

Zwar habe ich die aktuelle Abfrage hinbekommen, jedoch hat
mich das viel zu viel Zeit gekostet.



Anhand der Linq Beispiele kann man vieles für den tàglichen Gebrauch ableiten:
http://msdn.microsoft.com/en-us/vba...88088.aspx

PS: Eigentlich habe ich den Bogen um LINQ gemacht, weil ich an dem
Server/Client Konzept halte und LINQ würde für mich keinen Sinn machen.



Du solltest wàhrend der Lektüre merken:
Linq ist mehr als Linq To Sql oder Entity Framework.

Zwar gibt es keinen Grund alle Schleifen dadurch zu ersetzen,
aber wenn man es sich erarbeitet hat, làßt sich einiges damit
intuitiver programmieren. Und man kann es nach und nach
in die eigene Programmierung einflechten.

Ähnliche fragen