我想实现一个使用WebForm ascx用户控件(非MVC)的MVC Razor _Layout.cshtml页面。我这样做是基于这个Scott Hansleman文章“Mixing Razor Views and WebForms Master Pages with ASP.NET MVC 3”中的“Yes”部分。http://www.hanselman.com/blog/MixingRazorViewsAndWebFormsMasterPagesWithASPNETMVC3.aspx在MVC Razor视图中使用传统的ASP.NET ASCX用户控件
这篇文章说明如何在两个a中使用相同的ascx用户控件webform Site.Master页面以及MVC Razor _Layout页面。
从我读的elsewhere on Stackoverflow可以在MVC页面中使用传统的ascx用户控件(以及ASP.NET webform服务器控件)。使用下面的线应该呈现在我的剃刀_layout的ASCX用户控件:
@{ Html.RenderPartial("~/UserControls/WebUserControl1.ascx"); }
然而,引发错误:
The view at '~/UserControls/WebUserControl1.ascx' must derive from ViewPage,
ViewPage<TModel>, ViewUserControl, or ViewUserControl<TModel>.
我也有类似的结果尝试以下:
@Html.Partial("~/UserControls/WebUserControl1.ascx")
我在这里错过了什么?
有点误导,只要你更新UX继承ViewUserControl你没事吧... http://stackoverflow.com/questions/6538869/mvc3-razor-is-it-possible-to-render-a-传统-ascx –
@BobTodd:“传统的ASP.Net用户控件”,我的意思是回传和ViewState,这将无法正常工作。 – SLaks