ser*_*0ne 5 c# asp.net-mvc fluentvalidation .net-core asp.net-core
在FluentValidation.NET之前,我可以像这样正确地给一个自定义标签:
[Display(Name="Blah")]
public string BlahBlahBlah { get; set; }
Run Code Online (Sandbox Code Playgroud)
我可以通过多种方式消耗它:
@Html.LabelFor(m => m.BlahBlahBlah)
@Html.DisplayNameFor(m => m.BlahBlahBlah)
<label asp-for="BlahBlahBlah"></label>
Run Code Online (Sandbox Code Playgroud)
现在我想从我的模型中删除所有数据注释,并转向流畅的验证。在我的验证器中,我有这个:
RuleFor(o => o.BlahBlahBlah)
.NotEmpty()
.WithName("Blah");
Run Code Online (Sandbox Code Playgroud)
但这不起作用。为什么?
WithNameFluentValidation 中的方法仅用于调整验证错误消息,如果您想将 C# 属性名称替换为更用户友好的名称(有关详细信息,请参阅
覆盖默认属性名称)。
所以答案是 - 一般情况下您不能替换Display为WithName(),只能用于验证错误消息。
| 归档时间: |
|
| 查看次数: |
2994 次 |
| 最近记录: |