На работе мы стремимся перейти к ORM (по-прежнему используем базу данных доступа с ADO!) Я начал создавать структуру сущностей, и все прошло гладко, пока я не отделил ее от себя. dll (поэтому мы могли бы использовать системы веб-сайта/crm/production/barcoding, используя ту же логику базы данных).совокупные исключения с инфраструктурой сущностей в dll
Вопрос приходит обработатки DbEntityValidationExceptions, мой исходный код теста (который работал)
public override int SaveChanges(System.Data.Objects.SaveOptions options)
{
try{return base.SaveChanges(options);}
catch (DbEntityValidationException dbEx)
{
foreach (var validationErrors in dbEx.EntityValidationErrors)
{
foreach (var validationError in validationErrors.ValidationErrors)
{
Trace.TraceInformation("Class: {0}, Property: {1}, Error: {2}",
validationErrors.Entry.Entity.GetType().FullName,
validationError.PropertyName,
validationError.ErrorMessage);
}
}
//handle here
throw;
}
}
, но это не попасться в настоящее время и я оставил обработку общий threadException. Есть ли способ получить доступ к исходным данным (отличить исключение thread?) Или есть другой подход, который я должен принять. Я думаю, мне просто нужно толчок в правильном направлении, и я могу кое-что понять.
С уважением, Пит
UPDATE:
Мда немного вопрос называя GetValidationErrors. Я заметил, что в моей базе данных Context есть baseClass ObjectContext, а не DbContext (поэтому я не могу вызвать ValidateEntity). Я использую Entity Framework 5 с включенным генератором кода по умолчанию - с использованием первого подхода к базе данных, если это помогает.
Что исключение потока содержит? –