2010-06-11 9 views
23

Estaba teniendo problemas antes al intentar declarar un parámetro ChangeAction en un método, con el IDE diciendo que me puede estar faltando un Namespace.¿Cuál es la diferencia entre System.Linq y System.Data.Linq?

Así que hago clic derecho en él y lo resuelvo y encuentro que System.Data.Linq ha sido agregado y ahora todo está bien.

¿Cuál es la diferencia entre estos dos espacios de nombres?

Respuesta

20

Como yo lo entiendo, System.Linq se acerca la biblioteca de Linq en general: se aplica a todos los tipos de datos como listas y demás.

System.Data.Linq es sobre bases de datos (también conocido como Linq a SQL), que incluye cambios de seguimiento (ChangeAction).

8

Creo System.Linq es LINQ objetos específicos (IEnumerable, IQueryable, etc)

Mientras System.Data.Lin q es LINQ-SQL específica (DataContext, etc)

2

A mi entender, System.Linq es la implementación de nivel genérico que se basa en IEnumerable mientras que System.Data.Linq es específico del proveedor (LINQ to SQL) que se basa en IQueryable.

Cuestiones relacionadas