在Sitecore子布局中显示Sitecore MVC渲染(Webforms页面)

时间:2016-02-01 19:13:48

标签: asp.net asp.net-mvc sitecore rendering sublayout

我已将子布局转换为MVC渲染,并且需要静态绑定到另一个子布局。 使用

绑定旧的子布局
<sc:Sublayout runat="server" ID="myID" Path="file/path/tothe.ascx" />

现在该组件是我尝试过的渲染

<sc:Rendering runat="server" ID ="renderingID" Path="file/Path/ToView.cshtml"/>

<sc:Rendering runat="server" ID="renderingID2" renderingname="ReturnToSearchLink"/>

两者都没有成功。没有任何显示,并且在调试时渲染不会被击中。任何建议将不胜感激

3 个答案:

答案 0 :(得分:3)

开箱即用每个页面应该是WebForms或MVC。

不可取,但如果你真的想要有解决方案。像Hedgehog MVC aspx interop。我从未尝试过静态绑定,但你可以尝试一下。

请参阅http://www.hhogdev.com/blog/2012/december/mvc-webforms.aspx

请参阅Does anybody have experience in maintaining Sitecore MVC and Web Forms in a single solution?

答案 1 :(得分:2)

这是不可能的。您不能在WebForms子布局中进行MVC渲染。 MVC和WebForms是不同的技术。

您可以在Sitecore中执行的操作是包含MVC页面和WebForms页面的网站,但您不能将它们混合在一个页面上。

答案 2 :(得分:0)

它远非最优雅的解决方案,但一种选择可能是使用iframe将内容嵌入不同的技术之中。

例如,如果您在mvc网站中有所需的网页表单,则可以设置一个仅包含表单的webforms页面,并且没有边距或填充。在您的mvc网站上,您可以使用标准的html iframe来处理内容。

这种方法的一个挑战是使iframe的大小正确。

就解决方案而言,它绝对不是我的第一个停靠港。但是我们已经在某些场景中使用了它,这使我们不得不在两种技术中重建网站的部分内容。

相关问题