Hola Gente, tengo una consulta mas que nada de arquitectura. El tema es asi,
tengo una aplicacion en N capas con entidades. las transacciones con la capa
de reglas de negocios las manejo con entidades por temas de
interoperabilidad con diferentes interfases de diferentes tecnologias.
La pregunta es la siguiente: A veces los metodos de reglas de negocio son
complejos y pueden tener muchos resultados que hagan que no se complete la
transaccion solicitada. Cual es para uds la mejor forma de transportar el
estado de la llamada a un metodo y el mensaje devuelto por el motor de
reglas? exceptions, parametros por referencia o salida, etc?. Como fachada
estoy usando webservices.
Para ejemplificar un poco la pregunta, suponiendo que tienen un servicio que
da de alta clientes:
public void ClientCreate(entities.Client client)
{
...
}
Siendo que el cliente puede que no se deba crear por varios motivos (ya
existe, alguna propiedad no es correcta, etc etc), como hacen llegar esta
informacion al cliente?
Para casos donde no se usan webservices una exception parece buena opcion,
pero si se genera una exception en algo que esta despues de un webmethod el
resultado devuelto al webproxy no es un mensaje soap y es muy artesañal
obtener el mensaje del html que recibe el proxy.
Muchas gracias.
Ariel.
Leer las respuestas