Я использую аннотации данных для проверки моей модели в ASP.NET MVC. Это хорошо работает для методов действия, которые имеют сложные параметры, например,
public class Params
{
[Required] string Param1 {get; set;}
[StringLength(50)] string Param2 {get; set;}
}
ActionResult MyAction(Params params)
{
If(ModeState.IsValid)
{
// Do Something
}
}
Что делать, если я хочу передать единственную строку в метод действия (как показано ниже). Есть ли способ использовать аннотации данных или мне нужно будет обернуть строку в класс?
ActionResult MyAction(string param1, string param2)
{
If(ModeState.IsValid)
{
// Do Something
}
}
Я не верю, что существует метод аннотации данных к тому, что вы предлагаете. Однако, если вы хотите, чтобы ваша проверка выполнялась до вызова метода действия, рассмотрите возможность добавления настраиваемого атрибута привязки модели к параметру и укажите конкретное связующее устройство модели, которое вы хотите использовать.
Пример:
public ActionResult MyAction [ModelBinder(typeof(StringBinder)] string param1, [ModelBinder(typeof(StringBinder2)] string param2)
{
.........
}