2010-06-11 4 views
23

Ich hatte Probleme früher beim Versuch, einen ChangeAction-Parameter in einer Methode zu deklarieren, mit der IDE sagen, ich könnte einen Namespace fehlen.Was ist der Unterschied zwischen System.Linq und System.Data.Linq?

Also habe ich mit der rechten Maustaste darauf und Resolve es und finde, dass System.Data.Linq hinzugefügt wurde und jetzt ist alles in Ordnung.

Was ist der Unterschied zwischen diesen beiden Namespaces?

Antwort

20

Wie ich es verstehe, System.Linq über ist die gesamte Linq-Bibliothek - es gilt für alle Datentypen wie Listen und dergleichen.

System.Data.Linq ist über Datenbanken (alias Linq to SQL), die Tracking-Änderungen (ChangeAction) enthält.

8

ich System.Linq glauben ist LINQ-OBJEKTE spezifisch (IEnumerable, IQueryable, usw.)

Während System.Data.Lin q LINQ-SQL-spezifischen (Datacontext, usw.)

2

Nach meinem Verständnis ist System.Linq eine generische Implementierung, die auf IEnumerable basiert, während System.Data.Linq Provider-spezifisch ist (LINQ to SQL), die auf IQueryable basiert.

Verwandte Themen