Έχει βρει κανείς samples για το Enterprise Library, ή έστω για μεμονωμένα application blocks? Όσο και αν ψάχνω δεν έχω βρει ακόμα τίποτα. Και τα Quickstarts είναι κομμμάτι ... χαζά!
Συγκεκριμμένα ψάχνω για χρήση του Exception Handling Application Block. Εν συντομία, το block αυτό χρησιμοποιεί policies τα οποία ορίζουν πως θα αντιμετωπιστεί το κάθε exception: θα γίνει log, θα σταλεί ειδοποίηση, θα μετατραπεί σε κάτι άλλο. Με τον τρόπο αυτό η διαχείριση του exception βγαίνει από τον exception handler, ο οποίος παίρνει πλέον τη μορφή:
catch(Exception ex)
{
bool rethrow = ExceptionPolicy.HandleException(ex, "Data Access Layer Policy");
if (rethrow)
{
throw;
}
}
Αν προσέξατε, το policy προσδιορίζεται στον exception handler. Αυτό σημαίνει ότι μπορώ μεν να ορίσω τον τρόπο αντίδρασης στο config, αλλά το policy πρέπει να το προσδιορίσω καθώς γράφω τον κώδικα.
Πως λοιπόν θα προσδιορίσω το policy? Το πρόβλημα μεταφέρθηκε σε ανώτερο, πιο abstract επίπεδο.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos