Pregunta

pregunta simple en realidad, yo quería saber qué convenciones de nomenclatura que nadie se pone allí DTO / POCOS ....

En realidad no quiero prefijo como la notación húngara .. me alejé de eso!.

Pero mis dtos de nombres están chocando con mis nombres reales de objetos devueltos ya pesar de que están en un espacio de nombres diferente su todavía un poco confuso ..

Me preguntaba lo que las convenciones de nomenclatura que nadie se refiere a ella

Por ejemplo, mi objeto de cliente se llama al cliente

I y hacer un mapeo de dto ... que es cliente .. iwas pensar DtoCustomer ..

No está seguro

Cualquier persona?

¿Fue útil?

Solución

Yo prefiero usar espacios de nombres para esto. El uso de alias de espacio de nombres para esto hace que sea aún más clara.

Esto haría que el código que se parece a:

Customer myCustomer = new Customer();
Dto.Customer dtoCustomer = ....;

Si estoy trabajando totalmente en la capa DTO, todavía puedo trabajar con el "Cliente" en este punto.

Otros consejos

En mi experiencia, DTO son a menudo subconjuntos o agregaciones de datos que sus entidades de dominio representan. Esto suele deberse a las entidades de dominio son ricos objetos complejos, altamente interrelacionados, que tienen tanto el comportamiento y datos. Como tal, trato de nombre de mi DTO para reflejar lo más posible el subconjunto de información que representan. En el caso de los clientes, a menudo tengo DTO que están afinado a la información que se solicita:

  • CustomerHeader
  • CustomerDetail
  • CustomerWithRecentOrders
  • CustomerAndBill

En los ejemplos anteriores, CustomerHeader probable que sólo contienen el ID de cliente y nombre, a menudo se utiliza para mostrar a los clientes en las listas de sencillos. CustomerDetail contendría más información de los clientes, pero no contendría ninguna de las propiedades relacionales que es probable que contenga una entidad de atención al cliente por completo soplado. Los demás deben explicarse por sí misma, que es el objetivo final.

Me gusta CustomerDto más de DtoCustomer. Al igual que para tenerlos ordenados uno al lado del otro.

Sin embargo, el nombramiento también puede depender del uso del DTO. Por ejemplo, en un ASP.NET MVC menudo me llamo un DTO que se envía a una vista para CustomerViewModel.

Me suelen añado DTO en situaciones como esta.

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