Я пишу приложение с использованием MVC4 и EF5.x и используя ELMAH для регистрации исключений для проверки. Недавно мы выпустили приложение, и, как ожидалось, журнал ELMAH заполнил несколько десятков исключений. Великий (и не)! Проблема состоит в том, что один из этих исключенийКак регистрировать ошибки EntityValidation с помощью ELMAH MVC?
System.Data.Entity.Validation.DbEntityValidationException
Validation failed for one or more entities.
See 'EntityValidationErrors' property for more details.
Конечно, нет никакого способа, чтобы увидеть свойство EntityValidationErrors для получения более подробной информации и трассировка стеки оборачивает мой SubmitChanges()
Я знаю ELMAH имеет способность позволять нам поднимать собственные исключения и каким-то образом настраивать то, что регистрируется и как. К сожалению, я все еще очень новичок в ELMAH и MVC, и поиск в Google не стал чем-то значимым. Я нашел a blog article при регистрации EntityValidationErrors, и автор специально упомянул, что он опубликует, как это сделать в ELMAH, но опубликован в сентябре 2012 года, и с тех пор я ничего не видел.
Любая помощь была бы принята с благодарностью!
Почему бы не только поймать DbEntityValidationException вместо литья? –
Кроме того, вы можете использовать LINQ, чтобы выбрать все ошибки в виде списка строк и присоединиться к ним, а не выбирать первый. –
Было бы предпочтительным более центральное решение. Например, переопределение функции, в которой Elmah ловит ошибки и проверяет, является ли это «DbValidationError», затем изучать ее, – Zapnologica