Как использовать DataAnnotations ErrorMessageResourceName с пользовательским решением для ресурсов
Я создаю веб-приложение MVC с С#. Поскольку сайт будет многоязычным, я реализовал свой собственный ResourceManager. Этот класс отвечает за выбор необходимых строк ресурсов из базы данных/кеша в зависимости от культуры потоков потоков и работает до сих пор.
Моя проблема заключается в том, что я хотел бы использовать собственное решение ResourceManager для получения сообщений об ошибках проверки, например, используя обязательный атрибут свойства. Это можно сделать?
Ответы
Ответ 1
RequiredAttribute позволяет использовать настраиваемый менеджер ресурсов:
[Required(
ErrorMessageResourceType = typeof(CustomResourceManager),
ErrorMessageResourceName = "ResourceKey")]
public string Username { get; set; }
UPDATE:
Другая возможность - написать свой собственный атрибут:
public class CustomRequiredAttribute : RequiredAttribute
{
public override string FormatErrorMessage(string name)
{
return YourCustomResourceManager.GetResource(name);
}
}