2010-01-19 6 views

Respuesta

13

Comenzaría personalmente con LINQ to Objects. No necesita ningún buy-in entonces - puede usar LINQ en su código, dejarle usar foreach loops, condiciones, etc. en su código ... y eventualmente puede notar que su código es más declarativo, más claro y más corto.

La decisión de usar un ORM vs simple ADO.NET es más grande, IMO, y una con ramificaciones que van más allá de la sintaxis de LINQ.

+2

Lo he hecho de esta manera, y algunos de mis universitarios están comenzando a adoptarlo lentamente. –

0

Muéstreles my projection demo y pregúnteles cuánto código tomaría hacer lo mismo en ADO.NET. Luego, señale que en el mundo real probablemente habría repositorios y servicios intermedios, que obtendrá casi gratis con proyecciones LINQ.

A continuación, muéstreles el parallel extensions in .NET 4.

0

Algunos de los beneficios:

  • Puede consultar no sólo a las bases de datos, pero los archivos XML o cualquier colección de objetos con el misma sintaxis - esto es útil en el largo plazo
  • usign parámetros es más fácil, no necesita preocuparse por , por ejemplo inyecciones SQL
  • Puede consulta a través de relaciones sin tener que unirse de forma explícita, like this

El mayor beneficio de todo lo que llamaría es el primer punto, la misma sintaxis y simple.

Sin embargo, si su colega es un experto en el campo de la base de datos, es posible que no desee cambiar de inmediato. LINQ no trae beneficios inmediatos, especialmente no en proyectos en curso, pero en mi opinión lo hace más eficiente incluso a mediano plazo.

2

LINQ es genial, pero tenga precaución al introducir tecnologías adicionales, especialmente cuando su empresa ya se haya asentado en un estándar. No hay nada más molesto para un desarrollador y costoso para una empresa que tener que soportar 100 formas diferentes de hacer lo mismo.

2

Nos encontramos con un problema similar en mi lugar de trabajo. Mi argumento ha sido que LINQ es una forma consistente de consultar todo lo que sea compatible con IEnumerable (y otros), no solo las bases de datos. Pero, al usarlo para consultar bases de datos, obtiene el beneficio adicional de tener todas sus consultas fuertemente tipadas. No obtienes esto cuando haces SQL en línea o llamas a procedimientos almacenados. Este beneficio es enorme cuando las definiciones de las entidades cambian. El compilador hará todo el trabajo por ti.

1

Creo que también podría indicar que mantendría el proyecto y sus habilidades personales al día con las últimas herramientas y desarrollos ... como una bonificación a todo lo anterior.

0

Diles que lo has reconsiderado: ahora no te gusta LINQ y piensas que es una manera horrible de hacerlo.

Eso debería hacer el truco. Es broma (principalmente).

1

Brown bag lunch session. Proyecte su código en una pantalla y muestre cómo sus 20 líneas de código pueden volver a escribirse en 2 o 3.

Eso ha vendido a casi todos los que le he enseñado.

Cuestiones relacionadas