我的主站点中有一个名为“Account”的控制器,我想在Asp.net MVC 2区域中引用一个方法。
默认情况下,区域只能访问该区域内的控制器,这是有意义的,但似乎没有从另一个区域引用控制器的选项。
谢谢!
答案 0 :(得分:2)
以下是演练:http://msdn.microsoft.com/en-us/library/ee671793.aspx
您在routeValues参数对象中传递区域名称。
Url.Action("Index", "Home", new { area = "MyArea" })
您需要用于Html.ActionLink的构造函数还有一个htmlAttributes参数,您可以将其设置为null。
Html.ActionLink("Link Text", "Index", "Home", new { area = "MyArea" }, null)
使用空字符串作为默认区域。
答案 1 :(得分:1)
看看this site,看看它是否会帮助你。基本上,在您的操作链接中,您需要声明要引用的区域,就像ID或控制器一样。
默认区域中的控制器
html.actionlink("Home", "Index", New with {.area = "", .controller = "Home"})
另一个区域的控制器
html.actionlink("Home", "Index", New with {.area = "someArea", .controller = "Home"})