regex - 使用正则表达式进行 ASP.NET Web API 2 模型验证

标签 regex asp.net-web-api

在我的 web api 2 Controller 中,我有一个包含以下逻辑的 Create 方法:

if (((assignment.type).ToLower() != "individual" && (assignment.type).ToLower() != "staff")) {
  return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "The Assignment Type 
  must be either 'individual' or 'staff'");
  }

我正在使用模型状态验证。是否可以将正则表达式分配给属性以消除在 Controller 中进行检查的需要?如果是这样,那么只有当 api 用户传递“individual”或“staff”的确切字符串(不区分大小写)时,该 reg ex 才会返回有效?

最佳答案

感谢评论中的一些指导,我最终得到了这个,效果很好:

[RegularExpression(@"^(?i)(individual|staff)$", ErrorMessage="...")]
public string type { get; set; }

关于regex - 使用正则表达式进行 ASP.NET Web API 2 模型验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25770681/

相关文章:

c# - WebAPI 文件上传 - 无需将文件写入磁盘

c# - 如何连接 table1 - table2 和 table1 - table3 并返回 DTO 变量

regex - 如何删除 Postgresql 中的回车符和换行符?

Python - 正则表达式查找所有重复模式,后跟可变长度的字符

asp.net-mvc-4 - Web.API 和 FromBody

asp.net - 使用 ASP.NET Identity 和 Autofac OWIN 集成进行授权

asp.net - 将带有列表的实例传递给 API

regex - 无数的常规语言

c# - 使用 Regex Split 将长字符串拆分为数字和字母组件

javascript - 测试字符串是否仅包含字母(a-z + é ü ö ê å ø 等..)