我想實現一個使用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