10

Tridion 2011 SP1 と Razor テンプレートを使用していますが、ページの作成とユーザー インターフェイス 2012 を介したコンテンツの挿入に問題があります。これを試してみると、Razor ヘルパー、名前空間、およびアセンブリが Tridion.ContentManager.config ファイルにリストされているように見えます含まれないでください。

かみそりテンプレートに直接ヘルパーへの参照を追加しようとしましたが、すべて正常に動作しますが、すべての 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)\Tridion\Razor Mediator\Helpers\GeneralHelper.cshtml" />
 </imports>
</razor.mediator>

Razor テンプレートで直接参照されていない限り、UI にヘルパーと名前空間が含まれていない理由についてのアイデアはありますか?

前もって感謝します。

4

1 に答える 1

9

セッションプレビューメカニズムの背景

新しいUIは、セッションプレビューメカニズムに特別なタイプのパブリッシャーを使用します。これにより、パブリッシングプロセスが最適化され、このような環境で人々が期待する「ほぼリアルタイム」の動作が得られます。最適化されたパブリッシャーは、特定の手順をスキップすることでこれを実現します。その1つは、解決プロセスを減らし(公開されるアイテムが少なくなるように)、カスタムリゾルバーを呼び出さないことです。

あなたの問題について

新しいページを作成するときに、Razorテンプレートが呼び出されますか?

于 2012-08-02T11:07:21.287 に答える