相关疑难解决方法(0)

必须设置ErrorMessageString或ErrorMessageResourceName,但不能使用CreditCardAttribute设置错误

这是我的模特:

namespace MvcApplication2.Models
{
    public class CreditCard
    {
        [CreditCard(ErrorMessageResourceType = typeof(Messages), ErrorMessageResourceName = "CardNumberInvalid")]
        public string CardNumber { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的Messages.resx:

名称值

CardNumberInvalid检查您的卡号是否正确

这是我的观点:

@model MvcApplication2.Models.CreditCard
@Html.TextBoxFor(m => m.CardNumber);
Run Code Online (Sandbox Code Playgroud)

在MVC版本3中,这可以正常工作.在MVC 4中,当我转到此页面时,我得到一个表示"必须设置ErrorMessageString或ErrorMessageResourceName,但不能同时设置两者"的删除操作.这只发生在CreditCardAttribute上.其他验证属性(如RequiredAttribute)工作正常.我只设置了ErrorMessageResourceName.我没有设置ErrorMessageString,所以不明白我做错了什么.有人可以帮忙吗?

asp.net-mvc asp.net-mvc-4

50
推荐指数
3
解决办法
2万
查看次数

如何在ASP.NET MVC中更改默认验证错误消息?

说我的模型中有这个属性:

[DisplayName("test")]
[Required(ErrorMessage = "required")]
public DateTime? SomeDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

当您输入"asdf"时Html.TextBoxFor(model => model.SomeDate),您会收到验证错误消息"值'asdf'对测试无效.".

你如何修改那条消息?ASP.NET MVC被忽略了[DataType(DataType.DateTime, ErrorMessage = 'some other message')]

asp.net-mvc data-annotations asp.net-mvc-2

28
推荐指数
1
解决办法
6万
查看次数

如何为MVC创建自定义验证属性

我想为MVC2创建一个自定义验证属性,用于不从RegularExpressionAttribute继承但可以在客户端验证中使用的电子邮件地址.谁能指出我正确的方向?

我尝试了一些简单的事情:

[AttributeUsage( AttributeTargets.Property | AttributeTargets.Field, AllowMultiple = false )]
public class EmailAddressAttribute : RegularExpressionAttribute
{
    public EmailAddressAttribute( )
        : base( Validation.EmailAddressRegex ) { }
}
Run Code Online (Sandbox Code Playgroud)

但它似乎对客户不起作用.但是,如果我使用RegularExpression(Validation.EmailAddressRegex)]它似乎工作正常.

asp.net-mvc asp.net-mvc-validation

12
推荐指数
1
解决办法
3万
查看次数

如何使用数据注释来验证输入特定类型

用户必须仅以整数形式输入.如何使用数据注释进行验证?

c# asp.net-mvc

7
推荐指数
1
解决办法
2万
查看次数