Nunca he usado LINQ en ninguno de mis proyectos, siempre he usado ado.net/O herramienta en mis proyectos de aplicaciones de negocios, así que quiero saber ¿Cuáles son los beneficios de LINQ? ¿Por qué y cuándo alguien debería usar LINQ?¿Por qué y cuándo usar LINQ?
Respuesta
Solo para aclarar hay diferencias entre el concepto de LINQ y LINQ to SQL.
LINQ es una sintaxis de consulta , no es un idioma ni un O/RM. Puede construir un O/RM sobre la sintaxis proporcionada por LINQ.
Como supongo que su pregunta es realmente Cuándo utilizar LINQ to SQL Me limitaré a abordar eso.
LINQ a SQL se utiliza mejor cuando usted es:
- Sólo he dirigido MS SQL 2000 +
- Haciendo RAD
He usado LINQ to SQL en un par de comerciales productos y bastantes de mis propios productos y encontré estos beneficios:
- Idioma familiar para codificar en (C#/VB.NET)
- más fácil de mantener (tenemos más .NET de gurús de SQL en el personal)
- SQL generado está bien estructurado y muy óptima
- permite la traducción directa de las reglas de negocio a SQL mientras se sigue manteniendo toda la lógica de negocio en un solo proyecto
en cuanto a LINQ como un concepto lo uso todo el tiempo, porque entiendo lo que puede/no puede hacer y cómo utilizarlo correctamente. Al igual que cualquier característica del idioma, se puede omitir fácilmente si las personas no entienden qué es y cómo usarlo. Yo recomiendo los siguientes blogs para obtener algunos de los conceptos de LINQ abajo:
- Bart De Smet - Advanced
- Charlie Calvert
- Wriju
LINQ-to-SQL funciona bien como un ORM liviano a través del diseñador DMBL. Tiene soporte de idiomas integrado y facilita el acceso a sus entidades mediante el uso de patrones de acceso estándar. Lo uso en todos mis nuevos proyectos y descubro que es una mejora significativa para mí en simplicidad y capacidad de prueba. Hay mucha más información en este post.
Esta es una buena pregunta, pero se ha hecho muchas veces ya .Ver estas preguntas anteriores para una mayor profundidad y una cobertura más amplia:
LINQ es una especie de lenguaje de consulta universal. Si lo aprende, no tiene que limitarse a la base de datos, sino que también puede usarla para manipular archivos XML, o archivos o matrices JSON, Listas <> y dictionairies <,>. Es genial.
Incluso hay LinqToFlickr, LinqToExcel y LinqToGoogle. Es mucho más que un asignador OR. Ver: http://blogs.msdn.com/charlie/archive/2008/02/28/link-to-everything-a-list-of-linq-providers.aspx
- 1. Cuándo usar Cast() y Oftype() en Linq
- 2. ¿Dónde y cuándo usar LINQ to Objects?
- 3. ¿Cuándo y por qué debería usar TStringBuilder?
- 4. Cuándo usar IEquatable Y por qué
- 5. ¿Cuándo y por qué usar malloc?
- 6. ¿Cuándo y por qué deberíamos usar la clase System.ComponentModel.Container?
- 7. ¿Por qué usar PHP OOP sobre funciones básicas y cuándo?
- 8. ¿Cuándo necesito usar un Bigarray y por qué?
- 9. ¿Por qué (y cuándo) necesito usar paréntesis después de sizeof?
- 10. ¿Cuándo desechar y por qué?
- 11. ¿Cuándo usar == y cuándo usarlo?
- 12. Cuándo usar categorías y cuándo usar subclases?
- 13. ¿Cuándo debería usar LINQ para C#?
- 14. Cuándo usar undef_method, y cuándo usar remove_method?
- 15. Cuándo usar Pepino y cuándo usar RSpec?
- 16. cuándo usar Tarea y cuándo usar Subproceso?
- 17. Colecciones Java: ¿qué colección usar y cuándo?
- 18. cuándo deberíamos usar instanceof y cuándo no
- 19. Cuándo usar .mdf y cuándo .sdf?
- 20. Cuándo usar dup, y cuándo usar clon en Ruby?
- 21. ¿Cuándo debería usar Silverlight y cuándo XNA?
- 22. Cuándo usar Requirejs y cuándo usar javascript incluido?
- 23. Cuándo usar `zipmap` y cuándo` map vector`?
- 24. Cuándo usar assert() y cuándo usar try catch?
- 25. Cuándo usar Class.isInstance() y cuándo usar el operador instanceof?
- 26. cuándo y por qué uso JumboEnumSet
- 27. ¿Por qué y cuándo necesito Azure?
- 28. ¿Cuándo y por qué elevaría un objeto?
- 29. Cuándo usar GWT y cuándo no
- 30. Cuándo usar OSGi EventAdmin y cuándo no?