我已将子布局转换为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"/>
两者都没有成功。没有任何显示,并且在调试时渲染不会被击中。任何建议将不胜感激
答案 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的大小正确。
就解决方案而言,它绝对不是我的第一个停靠港。但是我们已经在某些场景中使用了它,这使我们不得不在两种技术中重建网站的部分内容。