Asp.net mvc 2 如何在Asp.Net MVC2中重载ActionResult
我对MVC2中的ActionResult方法重载有问题 我有三种方法Asp.net mvc 2 如何在Asp.Net MVC2中重载ActionResult,asp.net-mvc-2,c#-4.0,Asp.net Mvc 2,C# 4.0,我对MVC2中的ActionResult方法重载有问题 我有三种方法 public ActionResult MyMethod() { var data = ........ //some unfiltered data from db return view(data); } public ActionResult MyMethod(string name) { var data = ....... Where xxx.StartsWi
public ActionResult MyMethod()
{
var data = ........
//some unfiltered data from db
return view(data);
}
public ActionResult MyMethod(string name)
{
var data = .......
Where xxx.StartsWith(name)
//some filtered data by name
return View(data);
}
public ActionResult MyMethod(int age)
{
var data = .......
Where xxx.Equals(age)
//some filtered data by age
return View(data);
}
如何在Asp.NETMVC2中重载方法?
谢谢。简短的回答,您不能仅通过变量重载方法 如果必须具有相同的方法名称,则需要创建actionfilter属性并将其用作重载 以上讨论的片段:
[RequireRequestValue("someInt")]
public ActionResult MyMethod(int someInt) { /* ... */ }
[RequireRequestValue("someString")]
public ActionResult MyMethod(string someString) { /* ... */ }
在名称空间为[RequireRequestValue()]的情况下,您必须自己创建操作筛选器,并根据需要调用它。重新阅读我贴到的问题,看看@他是如何解决他的困境的。如果我想使用Mymethod(字符串a、字符串b、字符串c),你能给我举个过滤的例子吗?谢谢。到目前为止,你有没有尝试过用多个参数重载一个方法?我会帮你调试代码,但不会帮你写。。。