Tridion 用户界面 2012 - 创建页面/插入内容时找不到 Razor 帮助程序



我正在使用Tridion 2011 SP1和Razor模板,但在通过用户界面2012创建页面和插入内容时遇到问题。当我尝试这样做时,Tridion.ContentManager.config文件中列出的Razor助手、命名空间和程序集似乎没有被包括在内。

我试着直接在razor模板中添加对辅助对象的引用,一切都很好,但我不想在每个razor模版中都这样做。

当我尝试通过UI创建页面时,我会收到以下Razor错误:

TemplateCompileException: CS0103: The name 'GetBreadcrumbStatus' does not exist 
in the current context Line 64 Column 21: if(GetBreadcrumbStatus())

我的Tridion.ContentManager.config文件包含Razor Mediator的以下内容:

<razor.mediator cacheTime="600" extractBinaries="true">
 <namespaces>
  <add namespace="Tridion.Extensions.Mediators.Razor.Models" /> 
  <add namespace="System.Linq" />
 </namespaces>
 <imports>
  <add import="C:Program Files (x86)TridionRazor MediatorHelpersGeneralHelper.cshtml" />
 </imports>
</razor.mediator>

关于为什么UI不包括助手和名称空间,除非在Razor模板中直接引用它们,有什么想法吗?

提前谢谢。

会话预览机制的一些背景

新的UI在其会话预览机制中使用了一种特殊类型的发布者,该机制优化了发布过程,以获得人们在这种环境中所期望的"近乎实时"的行为。优化后的发布者通过跳过某些步骤来实现这一点,其中之一是减少解析过程(从而减少发布的项目),而不调用自定义解析器。

关于你的问题

创建新页面时是否调用了Razor模板?

最新更新