作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有这样一个类:
public class FooController : ApiController
{
[System.Web.Http.Route("live/topperformers")]
[System.Web.Http.AcceptVerbs("GET", "POST")]
[System.Web.Http.HttpGet]
public List<string> GetTopPerformers()
{
return new List<string>();
}
}
当我通过“http://foo.com/live/topperformers”访问它时,它运行良好。所以现在我想向此方法添加一个可选的 DateTime 参数,因此我修改了该方法以采用 DAteTime 参数,并使其可为空。
public class FooController : ApiController
{
[System.Web.Http.Route("live/topperformers/{dateTime:DateTime}")]
[System.Web.Http.AcceptVerbs("GET", "POST")]
[System.Web.Http.HttpGet]
public List<string> GetTopPerformers(DateTime? dateTime)
{
return new List<string>();
}
}
当我尝试访问不带参数的 URL 时,与我之前访问的一样 - 它给出了 404。传入日期值,如“like”http://foo.com/live/topperformers/2010-01-01 "工作正常。但没有日期,它给出 404。
我认为 Web API 以这种方式支持可选参数?我可以简单地重载并拥有两个版本,但这是否可以只使用一种方法?
最佳答案
设置可选参数 = null。试试这个:
public class FooController : ApiController
{
[System.Web.Http.Route("live/topperformers/{dateTime:DateTime?}")]
[System.Web.Http.AcceptVerbs("GET", "POST")]
[System.Web.Http.HttpGet]
public List<string> GetTopPerformers(DateTime? dateTime = null)
{
return new List<string>();
}
}
关于c# - 可选的日期时间 Web API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21393914/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!