2013-02-15 37 views
12

我在MVC 4中使用Razor。我試圖從一個區域中的視圖製作URL到另一個區域中的控制器動作。下面返回一個空字符串:帶區域的Url.Action()返回空字符串

@Url.Action("Action", "MyController", new { area = "OtherArea" }) 

我已經做了一些測試與其他選項,下面返回一個URL,但它是錯誤的:

@Url.Action("Action", "MyController", new { parameter = 1 }) 

所得網址爲/應用/ IncorrectArea /我的/動作?參數= 1。注意不正確的區域; Url.Action假設(因爲我沒有通過一個區域)控制器居住在當前的區域,它不!

任何想法?

回答

11

發現我的問題。我已更改區域名稱,但未能更新區域註冊中的AreaName屬性。

+4

發射控制器名稱看一看[T4MVC(http://t4mvc.codeplex.com/)修復許多與MVC中的字符串有關的問題。 – 2013-02-15 16:05:24

0

我有同樣的問題,因爲我改變了RegisterRoutes方法從{controller}/{action}/{id}{action}/{id}剛剛從URL