Realmente depende del tamaño de su capa y del tipo de producto que desarrolle. Si está bastante bien contenido, entonces ADO.NET probablemente sea ideal. Si se trata de una capa DAL más grande, y su desarrollo totalmente nuevo de dbms multidireccionales, es mejor utilizar una herramienta ORM. Son productos rápidos, eficientes y maduros, y pueden permitir rápidamente la reorientación a otro DB, simplemente cambiando un solo parámetro. Escribir ADO estático es algo que está pasando al legado.
Existen varias herramientas ORM que pueden hacer el trabajo, todas funcionan ligeramente diferente, y dependen de en su presupuesto, tamaño de su equipo, etc. Pueden funcionar escribiendo una clase de mapeo como NHibernate o trabajando a través de reflexión, es decir, marcado de atributo.
De forma gratuita, es decir, de código abierto, si su skint, NHibernate es ideal. Estoy usando esto en este momento, para construir la capa DAL, para un producto enteprise grande. Es excelente, pero tómate un tiempo para dominar. Con NHibernate usted define las clases de mapeo, que cuando se ejecutan generan el modelo db por usted. Es compatible con procedimientos almacenados. La desventaja es que lleva algo de tiempo aprender, especialmente cuando se mapean correctamente datos complejos. Es excelente. Tiene un gran paquete de muestras y otros proyectos flotando sobre eso lo usó. Echa un vistazo a Koders.com.
Si tiene un poco de presupuesto, entonces LLBLGen es ideal. Está fuertemente tipado y también admite procedimientos almacenados.
Si algunos de los modelos de datos ya están disponibles, entonces TierDeveloper es ideal. Es esencialmente gratuito y funciona desarrollando un conjunto de clases a partir de su modelo de base de datos. El único inconveniente es que el mapeador de MySQL es de terceros. Es un producto de clase enteprise que se ha hecho libre para admitir ncache, y es un posible enfoque.
Si está desesperado por quedarse con MS, se están moviendo hacia ORM, y tienen un producto llamado ADO.NET Entity Framework. Funcionalmente no es tan completo como las herramientas definidas anteriormente. Tiene cerca de 3 generaciones de retraso en la madurez. Está disponible en vs 2008 sp1. El conector para mysql sería un costo.
Además, podría usar LINQ. También se dirigirá a mysql, si también necesita el conector.
Idealmente, su mejor apuesta es con ORM. Si no puede admitir código abierto, y tiene presupuesto, , obtenga
Espero que ayude.
¡Actualmente estoy leyendo este libro y puedo recomendarlo de todo corazón! ¡es genial! +1 –