我在 Tridion 2011 中有一个页面模板,其中包含 Razor 代码,该代码将基于 RenderComponentPresentation() 的信息打印为页面中的第一件事。在它之前没有其他标记,因为包含初始标记的是组件,而不是页面。除非我在发布的输出中的第一个 RenderComponentPresentation 之前至少放置一个字符,否则模板将拒绝渲染任何演示文稿。
因此,例如,如果这就是布局 TBB 中的全部内容,那么它就可以工作(在我的真实代码中,tcms 当然是真实的):
<
@RenderComponentPresentation("tcm:mytcm","tcm:myothertcm")
但这并不
@RenderComponentPresentation("tcm:mytcm","tcm:myothertcm")
第一个打印前面带有“<”的组件的内容,而第二个则不执行任何操作。我不想直接在页面模板的开头有任何标记,我希望首先是组件。可能吗?
最佳答案
我刚刚使用最新版本的 Razor Mediator (1.2) 在模板生成器中进行了快速测试,但无法重现您的问题。
也许你可以尝试:
<text></text>
@RenderComponentPresentation("tcm:mytcm","tcm"myothertcm")
它不会呈现任何额外的标记,但可能欺骗中介者做你想做的事情(尽管就像我说的,我无法复制你的问题,所以无法验证它是否确实如此) .
关于templates - RenderComponentPresentation 在任何其他标记之前 Tridion Razor Page,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11214806/