我有几个ASP.NET WebApi控制器,每个控制器都有一些方法。所有这些方法都只能使用HTTP POST访问。我试图避免的是每种方法的显式[HttpPost]属性用法。是的,我很懒。 我的代码看起来像
[HttpPost]
public void Method1() { }
[HttpPost]
public void Method2() { }
...
有没有办法配置路由/基本控制器通过POST访问这些方法而不为每个方法设置属性?就像这样
public void Method1() { }
public void Method2() { }
...
如果我尝试调用没有[HttpPost]的方法,我会收到HTTP 405错误。
答案 0 :(得分:2)
ASP.NET Web API使用约定优于配置。如果您按照约定以下列方式命名您的行为......
GetXXX
PostXXX
PutXXX
DeleteXXX
...您不必使用这些属性。如果操作以适当的HTTP谓词开始,Web API将负责处理它。