I was having troubles earlier while trying to declare a ChangeAction parameter in a method, with the IDE saying I might be missing a Namespace.
So I right click it and Resolve it and find that System.Data.Linq has been added and now everything is fine.
What is the difference between these two namespaces?
LINQ to SQL is a technology that provides a run-time infrastructure for managing relational data as objects.
The C# Linq Any Operator is used to check whether at least one of the elements of a data source satisfies a given condition or not. If any of the elements satisfy the given condition, then it returns true else return false. It is also used to check whether a collection contains some data or not.
As I understand it, System.Linq is about the overall Linq library -- it applies to all data types like Lists and such.
System.Data.Linq is about databases (aka Linq to SQL), which includes tracking changes (ChangeAction).
I believe System.Linq
is LINQ-OBJECTS specific (IEnumerable, IQueryable, etc)
Whilst System.Data.Lin
q is LINQ-SQL specific (DataContext, etc)
As described here:
http://msdn.microsoft.com/en-us/library/system.data.linq.aspx
System.Data.Linq is for accessing relational data
To my understanding, System.Linq is generic-level implementation which relies on IEnumerable whereas System.Data.Linq is provider-specific (LINQ to SQL) which relies on IQueryable.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With