При проверке свойств string
с атрибутами аннотации данных кто-нибудь знает способ проверки строки - это один из множества возможных значений, возможно, выраженный в виде массива или разделительной строки?Аннотации данных для проверки, если в пределах набора значений
Вопрос более общий, но конкретный экземпляр, с которым я столкнулся, имеет свойство, которое может содержать подмножество методов HTTP; в частности, GET
, POST
, PUT
, PATCH
и DELETE
.
В пространстве имен System.ComponentModel.DataAnnotations
я вижу RegularExpressionAttribute
, что я могу потенциально подклассифицировать это и динамически создать RegEx, но задаюсь вопросом, отсутствует ли я что-то, что уже существует.
Ответ не ограничивается .NET framework. Сторонние библиотеки и даже пользовательский код являются приемлемыми, но чем ближе к стандарту (то есть в этом случае, хорошо принят), тем лучше.
Благодаря
Обратите внимание, что аннотации данных - это * аннотации *. Они сами по себе ничего не подтверждают. Вам все равно нужен код, который действительно уважает аннотации, чтобы что-то произошло. Это относится к любому решению, которое не является средством определения свойств, фактически проверяющим входящие значения. –
Если 'RegularExpressionAttribute' не отвечает вашим потребностям, вы можете создать собственные атрибуты проверки, которые реализуют' IClientVaidatable', что даст вам как проверку на стороне клиента, так и серверу [Полное руководство для проверки в ASP.NET MVC 3 - часть 2] (http://www.devtrends.co.uk/blog/the-complete-guide-to-validation-in-asp.net-mvc-3-part-2) –
@StephenMuecke - см. мой ответ. Если вы измените свой комментарий на ответ, я приму его. –