03 enero 2006

Disparar excepciones por el binding

Lo siguiente que pensé tras realizar bien y fácilmente el Binding entre un formulario y un objeto de negocio fue propagar los errores del objeto como excepciones que capture el formulario (a través de eventos del bind). Pues bien, además de la poca documentación que existe por Internet y en la ayuda sobre esto, sobre el evento DataError que no hay manera de disparar, hemos encontrado este artículo, donde queda bien claro que no es posible (aunque no porqué, eso deberá aclararlo Microsoft). Así que de momento tenemos una aproximación usando el evento BindingComplete, que se dispara a punta de pala, pero creo que nos hará el avío.

Otra cuestión abierta es el tratamiento de las propiedades de un objeto de negocio. Si antes teníamos un enumerado de NP, ¿tenemos que mantener algo parecido? ¿Nos vamos a referir a las propiedades por su nombre directamente (usando reflexión cuando sea posible)? Esto impide algunas cosas, por ejemplo antes teníamos un Select Case, pero en C# no es posible implementar un switch de una variable string, sólo numéricas. A pensar se ha dicho.

// Aportación de Berny, que no se acostumbra todavía a escribir aquí, y que encima no recibirá nunca un aviso de este blog porque esta registrado con el email bernardo@nobisoft.com (a ver si lo puedes arreglar en tus datos de usuario de Blogger).