3 回答

TA貢獻1827條經(jīng)驗 獲得超8個贊
您可以DbEntityValidationException使用以下代碼從中提取所有信息(您需要將命名空間:System.Data.Entity.Validation和添加System.Diagnostics到using列表中):
catch (DbEntityValidationException dbEx)
{
foreach (var validationErrors in dbEx.EntityValidationErrors)
{
foreach (var validationError in validationErrors.ValidationErrors)
{
Trace.TraceInformation("Property: {0} Error: {1}",
validationError.PropertyName,
validationError.ErrorMessage);
}
}
}

TA貢獻1111條經(jīng)驗 獲得超0個贊
如果您的類具有相同的屬性名稱,這是Praveen答案的一個小擴展:
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);
}
}
}
- 3 回答
- 0 關(guān)注
- 700 瀏覽
添加回答
舉報