我有兩個名字相同的控制器,其中一個居住在「管理員」區域,另一個在默認區域(我相信這可以解決爲區域的空字符串)。如何指定控制器在HtmlHelper.Action(string,string,object)中調用的名稱空間?
以下調用:
HtmlHelper.Action("Action", "DuplicateController", new { parameterValue = "test" });
如下似乎並不能夠解決我的ProjectA.Controllers.DuplicateController
和ProjectB.Controllers.DuplicateController
之間的區別,即使我指定的區域爲「」把它加:
HtmlHelper.Action("Action", "DuplicateController", new { parameterValue = "test", area = "" });
我知道我應該能夠通過指定一個路徑,當我在應用程序啓動時註冊它們來解決這個問題,但是是否可以直接向控制器指定完全限定名稱空間我知道我需要在動作中調用正確的會見HOD?
例如像下面這樣就可以解決我的問題:
HtmlHelper.Action("Action", "ProjectB.Controllers.DuplicateController", new { parameterValue = "test" });
謝謝,這是我落得這樣做。我認爲在helper方法中不允許使用名稱空間參數的原因是路由應該負責控制器操作的所有映射,這在原則上我同意,但在這種情況下稍微不方便。 –