在验证中返回空错误消息

时间:2015-08-17 12:06:20

标签: asp.net asp.net-mvc razor

我想在ASP.NET MVC 5项目中返回空字符串以进行验证。我在视图模型中创建了一个属性:

[Required(ErrorMessageResourceType = typeof(TestResources), ErrorMessageResourceName = "Empty_Message", ErrorMessage = null)]
public int? TestProperty { get; set; }

在视图中:

@Html.ValidationMessageFor(x => x.TestProperty)

当我尝试这个时,我收到默认消息“此字段是必需的。”。我希望在这种情况下它是空的,因为我在错误消息的span元素中添加了一个类,显示了一些图标。

我尝试过类似的东西:

[Required(ErrorMessage = "")]
public int? TestProperty { get; set; }

......但收到了错误:

  

必须设置ErrorMessageString或ErrorMessageResourceName,但是   不是两个。

2 个答案:

答案 0 :(得分:1)

尝试设置空格。示例" Space"。那样可以解决你的问题。

[Required(ErrorMessage = " ")]
public int? TestProperty { get; set; }

答案 1 :(得分:0)

您可以使用以下代码:

[DisplayFormat(ConvertEmptyStringToNull=false)]

参考更多细节:
RequiredAttribute with AllowEmptyString=true in ASP.NET MVC 3 unobtrusive validation