Entwickler-Ecke
Datenbanken (inkl. ADO.NET) - LINQ oder ADO.NET
Skiller-1988 - Mi 27.08.08 08:15
Titel: LINQ oder ADO.NET
Hi,
zurzeit beginne ich mich mit ADO.NET und somit mit Clientzugriffe auf Datenbanken zu beschäftigen, da ich im Rahmen meiner Ausbildung zum Fachinformatiker für Anwendungsentwicklung eventuell ein Projekt in dieser Richtung machen möchte. Nun stellt sich mir jetzt die Frage ob ich da auf Techniken von ADO.NET Zugreifen soll, mit den ich schon ein bisschen Erfahrung gesammelt habe oder ob ich mich jetzt in die für mich relativ neuen Techniken von LINQ einarbeiten sollte? Ist LINQ in Zusammenarbeit mit SQL-Datenbanken immer die bessere Wahl? Lässt sich ungefähr sagen wie umfangreich eine Einarbeitung in LINQ ist? (Besitze Grundkenntnisse SQL)
Kha - Mi 27.08.08 12:02
Skiller-1988 hat folgendes geschrieben: |
Ist LINQ in Zusammenarbeit mit SQL-Datenbanken immer die bessere Wahl? |
Solange es nicht um Performance sondern Komfort geht: Definitiv. Schon allein deshalb, weil du dich nicht mehr mit SQL herumschlagen musst ;) .
VS macht das Ganze schon unglaublich einfach. Ich habe bis heute noch nie einen O/RM benutzt, also einfach mal ausprobiert:
- Neue Konsolenanwendung
- "ADO.NET Entity Data Model" hinzufügen, Northwind.Products importieren
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| using (var db = new NorthwindEntities()) { var query = from p in db.Products group p.ProductName by p.ProductName.Substring(0, 1) into g orderby g.Key select g;
foreach (var group in query) { Console.WriteLine(group.Key); foreach (var name in group) Console.WriteLine("- " + name); } } |
(Kann schon sein, dass die Query nicht das Gelbe vom Ei ist ;) )
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| A - Aniseed Syrup - Alice Mutton B - Boston Crab Meat C - Chai - Chang - Chef Anton's Cajun Seasoning - Chef Anton's Gumbo Mix - Carnarvon Tigers - Côte de Blaye - Chartreuse verte - Chocolade - Camembert Pierrot [...] |
Works like a charm, kann man dazu wohl nur sagen.
Noch ein kleiner Überblick über die O/RMs, denn das ist vielleicht das Verwirrendste überhaupt:
Skiller-1988 - Mi 27.08.08 12:13
Ok erstmal danke für deine Antwort, nur wenn ich ein Projekt mache und die Performance schlechter ist als bei ADO.NET (wo ich mich inzwischen eingearbeitet habe) bringt dem Kunden es ja dann letztendlich nichts das ich es beim Programmieren einfacher hatte sondern der legt sicher lediglich Wert auf Performance.
Sind die Performance Unterschiede bei kleinen Datenbanken überhapt zu spühren?
(z.B. komplette Mitarbeiter Verwaltung mit 100 Mitarbeitern)
Kha - Mi 27.08.08 13:59
Im Zweifelsfall muss man so etwas immer an den wirklichen Daten testen, aber ich sage einfach mal: Bei weniger als 10.000 Rows musst du dir darüber überhaupt keine Gedanken machen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!