我很确定答案不会在这里,但我只想确定。正如您可能猜到我正在将Web表单项目转换为ASP.NET MVC。因此,我有一个Web表单母版页和一个MVC母版页。用户控件(.ascx)在MVC主页面中呈现正常,但回发基本上什么都不做。
我所知道的最佳解决方案是使用部分而不是MVC母版页的用户控件。然后有一个抽象控制器,任何使用MVC母版页的控制器都继承自。不完全是DRY,但这是我现在唯一知道的事情。有更好的想法吗?
谢谢! 达伦
答案 0 :(得分:0)
你是对的 - 来自用户控件的回发只是在Mvc环境中不起作用。
我在类似项目中所做的是逐步将UserControls迁移到从MVC调用的Partials或从webforms中调用。 [无耻的插件]我写过如何在这里调用RenderPartial和RenderAction:http://www.blog.clicktricity.com [/无耻的插件]
答案 1 :(得分:0)
回发控件如提交按钮可以正常工作;渲染__doPostBack的任何内容都不起作用,例如< button>,< a> (或LinkButton),< input type =“button”/>等等。
此外,不确定所有上下文,但考虑Html.Action MVC 2语法(如果使用MVC 2)也是实现它的一种方式,这可能会更好,具体取决于控件内的内容。