ValidationMessageStore.Add()非字段异常:应传入何种参数?
非字段级全局错误的ValidationMessageStore使用方案
当需要添加与具体字段无关的全局错误时,你可以通过以下方式构造FieldIdentifier参数:
方法一:创建以表单模型实例为
Model、空字符串为FieldName的FieldIdentifier对象// 假设formModel是你的表单模型实例 var globalField = new FieldIdentifier(formModel, string.Empty); validationMessageStore.Add(globalField, $"数据库保存失败:{ex.Message}");方法二:使用Lambda表达式直接指向模型本身(部分Blazor版本支持该简化写法)
validationMessageStore.Add(() => formModel, $"数据库保存失败:{ex.Message}");
添加完成后,记得调用EditContext.NotifyValidationStateChanged()触发UI更新,页面中可以通过<ValidationSummary />组件展示所有验证错误,或用<ValidationMessage For="@(() => formModel)" />单独显示该全局错误。
内容的提问来源于stack exchange,提问作者David Thielen
相关产品推荐
相关产品推荐

