Pregunta

Estoy usando el marco de entidad ADO.NET como la capa de acceso a datos en mi aplicación, pero no estoy seguro de dónde debería poner la lógica de negocios. ¿Hay alguna mejor práctica o muestras disponibles que ilustren cómo integrar la lógica de negocios con entidades marco de entidad?

Después de editar:
Quiero cualquier muestra con cálculo de implementación, seguridad, reglas y otras cosas en BLL ... ¡cualquier artículo y muestras ...!

¿Fue útil?

Solución

Puede usar entidades como objetos comerciales. Implementar la lógica de negocios Artículo de la Biblioteca MSDN Explique cómo hacerlo. Si sigue el enlace, encontrará muestras de código para adaptarse a la lógica de negocios durante los cambios de propiedad y al guardar cambios.

Recuerda que puedes Extienda EF con clases parciales con lógica comercial personalizada.:

"El marco de la entidad ADO.NET incluye una herramienta que, dado un esquema EDM, generará las clases .NET que representan las entidades EDM dentro del entorno .NET. Las clases generadas son clases parciales, por lo que pueden extenderse con la lógica comercial personalizada en archivos separados sin interferir con el generador de código ".

Personalización de objetos El artículo de MSDN también cubre este tema.

En soluciones de nivel n para aplicaciones ricas en Internet (Ria) puedes Agregue la lógica de negocios al servicio de dominio

Otros consejos

Debe tener una capa comercial (ya sea un proyecto separado que hace referencia a su capa de acceso de datos o al menos algún tipo de directorio donde residan sus objetos comerciales). Estos objetos comerciales deberían ser los que hablan con su DAL directamente. En otras palabras, no implementa la lógica comercial en su DAL ya que no pertenece allí.

Estoy seguro de que has visto este diagrama antes:

enter image description here

No pondría la lógica/reglas de su negocio en el marco de la entidad: sirve como una capa de acceso a datos. Crearía un proyecto de lógica comercial separada (biblioteca de clases) Esto puede llamar a su capa de acceso a datos para obtener/establecer datos y hacer cumplir las reglas comerciales en el camino, de esta manera puede reutilizar las reglas si su capa de acceso de datos cambia.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top