2011-06-23 398 views
3

如何從一個區域路由到另一個區域?MVC 3路由到區域

在默認項目中,沒有區域,但是一旦添加區域,我如何從默認主頁重定向到新區域內的頁面?

我沒有看到一個RedirectTo *方法,它爲任何地方的Area名稱提供參數。 除非我完全錯過了Area的點?

回答

3

在我們的視圖中,我們不需要在生成 指向該區域內其他控制器操作的鏈接時指定區域路徑數據值。我們只提供操作名稱,因爲控制器和區域名稱將來自當前請求的現有路由數據。如果我們想鏈接到外部區域,我們需要明確提供該路線數據。

return RedirectToAction("yourAction", "YourController", new { area = "yourArea" }); 

「area」路由值需要與AreaRegistration類中使用的AreaName匹配,才能正確生成URL。

0

此代碼在您的視圖將您鏈接到管理區,無論哪個領域,你目前在:

@Html.ActionLink("Click Me", "ActionName","ControllerName",new { Area = "AreaName"}, null) 

例如(差由例子)

@Html.ActionLink("Administer User", "Home","UserAdmin",new { Area = "Admin"}, null) 

在通話的最後空相當於HtmlAttributes,我通常把它作爲空。