相同的名称操作方法采用不同的返回类型

问题描述:

我在我的控制器2种action方法,两者都呼吁POST请求,但有不同的返回类型:相同的名称操作方法采用不同的返回类型

public JsonResult AJAXCreate() 

public string AJAXCreateNSave([Bind(Exclude = "Id, OrderItems")]Order order) 

当我重新命名第二个到AJAXCreate,它根本不叫。我想为这两种操作方法使用相同的名称。

重载的方法不允许在ASP.NET MVC中没有属性来指定不同的操作名称。看看这个类似的问题和答案:Can you overload controller methods in ASP.NET MVC?

就像在WCF服务的操作,没有两个动作可以具有相同的名称,除非他们针对不同的HTTP动词,如:

public ActionResult MyAction() { } 

[HttpPost] 
public ActionResult MyAction(MyModel model) { } 

如果您尝试使用两个动作具有相同的名称,MVC没有按不知道选择哪个动作。

+0

马修我必须选择1回答:( – Coder 2011-05-19 12:55:29