c# - 字符串参数应该只允许在.net c#中的Web api路由属性正则表达式中使用字母数字和点
问题描述
我有一种方法,在 webapi 中,我使用 swagger 来调用 web api。在 api 请求中,“请求类型”参数应该只允许使用字母、数字和点 (.)。我试过下面的代码,但它不工作
[HttpGet]
[SwaggerResponse(HttpStatusCode.OK, Type = typeof(string))]
[Route(@"testMethod/{requestType:regex(^[A-Za-z0-9. ]+$)}")]
public IHttpActionResult testMethod(int mid,string requestType = "", )
{
//logic
}
解决方案
在正则表达式中,点通常是任何字符的占位符。因此,你必须逃避它。在 .NET 中,这是通过反斜杠完成的:A-Za-z0-9\.
推荐阅读
- salesforce - 空选项列表字段的验证规则公式
- c - C:在struct中添加链表导致null错误
- c# - C# WPF DataGrid 获取行
- php - 如果组件实现了一个非常特别命名的接口,PHP 解释器会失败
- javascript - .slice() 数组中的第二个元素
- azure - 使用 Azure 专用连接的单向同步 SQL Server DB
- python - 在python中使用torpy调用get函数时遇到错误
- angular - SignalRHelper 如何通过带有基本 url 的 http 进行授权,以及如何连接到 ws 使用另一个带有另一个 baseUrl 的 ws url
- angular - 第一个事件触发后如何执行第二个事件
- c# - 根据实体框架检查数据库中的数据