Web API属性路由URI问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Web API属性路由URI问题相关的知识,希望对你有一定的参考价值。
我想通过这个URI路由我的API
localhost/api/ServiceA/1234
其中isbn = 1234
目前我正在从下面提到的UrI中检索json
localhost/1234
其中1234是伊斯兰
如何使用以下uri获得相同的json结果?
localhost/api/ServiceA/1234
目前我使用上述URL获取null
使用以下代码使用属性路由我得到结果
我有一个API控制器
public class ServiceAController : ApiController
{
[Route("api/ServiceA/{isbn}")]
public Book GetBook(string isbn)
{
using (AppDbContext db = new AppDbContext())
{
var query = from b in db.Books
where b.ISBN == isbn && b.Source == "Book Store 1"
select b;
return query.SingleOrDefault();
}
}
}
答案
看起来你忘了为你的方法保留[HttpGet]
属性。
例如:
[Route("api/ServiceA/{isbn}")]
[HttpGet]
public Book GetBook(string isbn){
// ...
}
以上是关于Web API属性路由URI问题的主要内容,如果未能解决你的问题,请参考以下文章