【发布时间】:2019-12-09 08:48:48
【问题描述】:
我是 MVC Web Api 的新手。
我想要两种不同的方法。
PUT localhost/api/user - 修改用户
POST localhost/api/user - 添加用户
所以我的ApiController 看起来像这样:
[HttpPost]
public bool user(userDTO postdata)
{
return dal.addUser(postdata);
}
[HttpPut]
public bool user(userDTO postdata)
{
return dal.editUser(postdata);
}
但是我的 HttpPut 方法说“已经定义了一个名为 user 的成员具有相同的参数类型。
[HttpPost] 和 [HttpPut] 不应该使方法独一无二吗?
【问题讨论】:
-
限制是 C# 的基本组成部分,不能有两个具有相同名称和参数的方法。属性对此没有发言权,MVC 也没有。
-
参考这里:stackoverflow.com/questions/9552761/… 了解潜在的解决方案
-
用这两种类型装饰你的动作方法。例如下一行中的 [HttpPost] [HttpPut] public bool user(userDTO postdata) { return dal.addUser(postdata); }
标签: c# asp.net-web-api