在.Net中编写Web Api方法时,是否需要使用HTTP代码(如GET,Post等)的方法名称前缀?

时间:2016-01-25 10:25:34

标签: asp.net-web-api

在.Net中编写Web Api方法时,是否需要使用类似GETPOST等HTTP代码的方法名称前缀? 例如:

public IEnumerable<Product> GetAllProducts();
public IHttpActionResult GetProduct(int id);
public IHttpActionResult PostProduct(Product prod);

2 个答案:

答案 0 :(得分:0)

不,这没有必要,但它是将HTTP谓词映射到操作方法的几种约定之一。例如,你可以这样做:

[HttpGet]
public IHttpActionResult AllProducts();

或者这个:

public IHttpActionResult GetAllProducts();

他们都会处理GET次请求。

答案 1 :(得分:0)

如果您使用属性路由,则不需要。

Have a read of the docs

例如:

以下示例将CreateBook方法映射到HTTP POST请求。

[Route("api/books")]
[HttpPost]
public HttpResponseMessage CreateBook(Book book) { ... }