无法在RenderPartial中指定控制器名称

时间:2009-09-11 07:08:52

标签: .net asp.net-mvc

在Brad Wilson的帖子中

http://webanonymizer.info/browse.php?b=5&u=Oi8vYnJhZHdpbHNvbi50eXBlcGFkLmNvbS9ibG9nLzIwMDgvMDgvcGFydGlhbC1yZW5kZXJpLmh0bWw%3D

他列出了Html.RenderPartial()的所有重载方法,但没有一个将控制器名称作为参数。

对于我的应用程序,我想在调用RenderPartial时指定控制器名称。除了将我的视图移动到/ Shared文件夹之外,有什么方法可以解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

Render方法用于渲染视图。想法是控制器处理请求,召唤一个模型并将模型交给View。那时,控制器的工作已经完成。

如果View需要了解有关Controller的任何信息,我认为这表明存在设计缺陷。你能分享更多关于你想要完成的事情吗?

我经常发现,在处理设计良好的框架(例如MVC框架)时,如果感觉框架正在打击你,那么你可能会以错误的方式处理任务。这种情况在我身上发生了很多,并且回过头来问自己,我真的试图完成的是什么,这往往会带来新的见解。

但如果你真的必须,你总是可以把控制器名称放在ViewData中......

答案 1 :(得分:0)