Ho scritto un'applicazione utilizzando MVC4 ed EF5.x e utilizzando ELMAH per la registrazione delle eccezioni per la revisione. Recentemente abbiamo rilasciato l'applicazione e, come previsto, il registro ELMAH si è riempito di diverse dozzine di eccezioni. Grande (e non)! Il problema è che una di queste due eccezioni èCome posso registrare gli errori EntityValidation usando ELMAH MVC?
System.Data.Entity.Validation.DbEntityValidationException
Validation failed for one or more entities.
See 'EntityValidationErrors' property for more details.
Naturalmente, non c'è modo di vedere la proprietà EntityValidationErrors per maggiori dettagli e l'analisi dello stack avvolge ai miei SubmitChanges()
So ELMAH ha la capacità di permetterci di aumentare le nostre eccezioni e in qualche modo personalizzare ciò che viene registrato e come. Sfortunatamente, sono ancora molto nuovo per ELMAH e MVC e una ricerca su Google non ha rivelato nulla di rilevante. Ho trovato a blog article sulla registrazione di EntityValidationErrors, e l'autore ha specificamente menzionato che avrebbe pubblicato come farlo in ELMAH ma che è stato pubblicato nel settembre del 2012 e da allora non ho visto nulla.
Qualsiasi aiuto sarebbe molto apprezzato!
Perché non solo cattura DbEntityValidationException invece di casting? –
Inoltre, è possibile utilizzare LINQ per selezionare tutti gli errori come un elenco di stringhe e unirle anziché selezionare il primo. –
Si preferirebbe una soluzione più centrale. Ad esempio, ignorando la funzione in cui Elmah rileva gli errori e verifica se si tratta di un 'DbValidationError', quindi guarda oltre, – Zapnologica