Это моя модель:
namespace MvcApplication2.Models
{
public class CreditCard
{
[CreditCard(ErrorMessageResourceType = typeof(Messages), ErrorMessageResourceName = "CardNumberInvalid")]
public string CardNumber { get; set; }
}
}
Это мои сообщения .resx:
Значение имени
CardNumberInvalid Проверьте правильность номера вашей карты
И это мое мнение:
@model MvcApplication2.Models.CreditCard
@Html.TextBoxFor(m => m.CardNumber);
В версии MVC 3 это работает без ошибок. В MVC 4, когда я перехожу на эту страницу, я получаю сообщение об исключении: "Должно быть установлено либо значение ErrorMessageString, либо ErrorMessageResourceName, но не оба". Это происходит только с помощью CreditCardAttribute. Другие атрибуты проверки, такие как RequiredAttribute, работают нормально. Я только установил ErrorMessageResourceName. Я не установил ErrorMessageString, поэтому не понимаю, что я сделал неправильно. Может ли кто-нибудь помочь?