Coach


In pieno rock ".net" roll
Anno 2011

Anno 2010

Anno 2009

Anno 2008

Anno 2007

Anno 2006

Anno 2005

Centralizzare la gestione delle Exception

Nelle applicazioni Enterprise è di fondamentale importanza centralizzare la gestione delle Exception per poter gestire e controllare al meglio l'intera piattaforma.
Attraverso gli application block  sia versione 1.1 che 2.0 sia a disposizione un componente proprio per gestire e centralizzare tutte le eccezioni della vostra applicazione.
Nella versione 1.1 non erano fatte molto bene(la versione 2.0 ancora la devo provare) quindi ho preferito crearmi un mio modulo per poterlo riutilizzare in tutti i miei progetti.
Prendiamo ad esempio una architettura three-tiers così fatta:



il layer delle Exception sarà trasversale a gli altri te perchè deve essere richiamato da ogni layer in un determinato modo.
Il modulo Exception quindi sarà un progetto a parte nella nostra soluzione di Visual Studio e conterrà una classe per ogni Layer così strutturata
DALException(come da best pratices usare il suffisso Exception)
BLLException
UIException.

DALException erediterà da SqlException se utilizzate il provider di Sql Server oppure da OleDbException; BLLException erediterà da Exception e UIException erediterà da HttpException.
In questo modo abbiamo la possibilità di intercettare gli errori di ogni singolo layer in modo appropiato.
Poi creremo una classe chiamata Logging che si occuperà di scrivere sul file di testo e quindi verrà richiamata da tutte e 3 le classi custome che abbiamo creato.
La classe Logging si occuperà di analizzare le exception e volendo attraverso magari un file di configurazione decidere se fare debug, audit ecc.
Se si stà sviluppando un'applicazione web volendo si può sfruttare anche la scrittura nel tracing di asp.net.
Qualcuno ha fatto una progettazione simile? mi piacerebbe discuterne e capire che soluzioni avete adottato o se vi piace questa!
martedì, 02 mag 2006 Ore. 14.45
  • Views Home Page: 299.745
  • Views Posts: 824.075
  • Views Gallerie: 355.063
  • n° Posts: 484
  • n° Commenti: 275












Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003