我有一个ProdcutsController,其中有2个Action方法。索引和详细信息。 索引将返回产品清单,详细信息将返回选定产品ID的详细信息。ASP.NET MVC3:ActionMethod具有相同名称和不同参数的List和Details视图
所以我的网址都是这样
sitename/Products/
将加载索引视图来显示的产品列表。
sitename/Products/Details/1234
将加载详细信息视图显示1234
现在我要避免从我的第二个网址的“详细信息”字产品的详细信息。所以,它应该像
sitename/Products/1234
我试图从“详细信息”,以“索引”,在它的参数重命名我的操作方法。但它给我的错误“Method is is ambiguous
”
我想这
public ActionResult Index()
{
//code to load Listing view
}
public ActionResult Index(string? id)
{
//code to load details view
}
我得到这个错误现在
The type 'string' must be a non-nullable value type in order to use
it as parameter 'T' in the generic type or method 'System.Nullable<T>
意识到,它不支持方法重载!我该如何处理?我应该更新我的路线定义吗?
俄德路线:第一个给我404错误,第二个给我ambigous指数方法的错误。我应该在global.asax中更新我的路线注册吗? – Happy 2011-12-25 21:22:43
@快乐 - 你有什么其他'索引'动作? – Oded 2011-12-26 08:20:39