当我尝试使用时Html.Action
在 ASP.NET MVC 3 中,对于与当前控制器不同的命名空间中的控制器,我收到错误:
Code:
@Html.Action("Foo", "Application", new { id = "FG2" })
Error :
路径控制器
'/rrmvc/store/checkout' 不是
发现或未实施
I控制器。
仅当控制器ApplicationController
与当前控制器位于不同的命名空间中,例如StoreControllers.CheckoutController
(事实上他们也处于完全不同的领域)。
有没有办法在调用时指定命名空间Html.Action
(完全限定名称空间等明显的方法似乎都不起作用)?
没有可用的 lambda 方法,但我有没有运气使用Html.RenderAction https://stackoverflow.com/questions/3383618/is-response-write-working-with-razor/3383674#3383674在 MVC3 RTM 中。
Edit:我认为这可能与该地区有关 - 或者这也可能完全是转移注意力。我在不同的命名空间中有另一个控制器可以正常工作 - 所以我认为问题更复杂。如果我弄清楚了,我会回复一个答案 - 或者如果不想避免混淆,就删除这个问题!
如果控制器位于不同区域,您可以尝试指定此区域名称:
@Html.Action("Foo", "Application", new { id = "FG2", area = "foo" })
如果您已经在该区域内并且想要渲染位于根目录中的控制器上的操作,您可以尝试以下操作:
@Html.Action("Foo", "Application", new { id = "FG2", area = "" })
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)