【发布时间】:2026-02-19 10:15:01
【问题描述】:
我正在尝试使用 DBContext 来自动验证我的实体并在屏幕上显示一条消息。获取验证错误成功检测到字符串类型的所有不可为空的属性,因为它们仍然具有 null 值。当我尝试验证 int 类型的属性时,我的问题就出现了。默认情况下,该值已设置为 0,并且由于它是外键 id,因此我需要此值不为 0,但不会被检测到。
//Create a database context over current ObjectContext
var databaseContext = new DbContext(this, true);
//Get Validation Errors
var errors = databaseContext.GetValidationErrors();
//Display errors on screen
if (errors.Any())
{
var errorList = new StringBuilder();
foreach (var error in errors)
{
foreach (var validationError in error.ValidationErrors)
{
errorList.AppendLine(validationError.ErrorMessage);
}
}
var vm = IoC.Get<ModalConfirmationViewModel>();
vm.Message = errorList.ToString();
var wm = IoC.Get<WindowManager>();
wm.ShowDialog(vm);
return false;
}
想法?
谢谢 本
【问题讨论】:
标签: c# entity-framework validation