2

5.3 バージョンから Tridion 2011 SP1 に移行しました

複合テンプレートのセットアップでは、Web サイト全体で頻繁に使用される関数を含む「CommonFunctions」というプロジェクトを 1 つ作成しました。

この cs ファイルは tridion コンテンツ マネージャーにビルドされており、[Exixting アイテムの追加] > [CommonFunctions.cs] > [リンクとして追加] を使用して他のプロジェクトで参照しようとしています。

しかし、プロジェクト(commonFunctions csファイルが参照されている)をビルドしようとすると、次のエラーが表示されます:

別のアセンブリ テンプレート用に作成された生成済みテンプレートが既に存在するため、CommonFunctions という名前のテンプレートを生成できません。

誰でもこれを手伝ってもらえますか?

感謝と敬意

4

2 に答える 2

4

エラーメッセージが表示される場合、理由は非常に単純です。同じ名前 (CommonFunctions) で 2 つの TBB を作成しようとしています。既存の TBB を変更するか、新しい TBB の名前を変更することをお勧めします。

于 2012-09-03T10:47:32.957 に答える
3

CommonFunctions クラスは ITemplate を実装していますか? もしそうなら、これがあなたがエラーを見ている理由です。そうすることは、アップロード時に Tridion がその TBB を作成しようとすることを意味し、名前の競合が発生する状況を引き起こします。クラスには何がありますか?ヘルプ機能または「テンプレート」(TBB) のいずれかである必要がありますが、両方である必要はありません。少なくとも、既存の機能をこのように再利用したい場合はそうではありません。

私が見ているように、いくつかのオプションがあります。1 つ目は、現在使用されているフォルダーとは異なるフォルダーに新しいアセンブリをアップロードすることです。2 つ目は、クラスを新しいプロジェクトにコピーして名前を変更することです。3 つ目は、ヘルパー関数を TBB クラスから ITemplate を実装しないクラスに分離することです。これにより、新しいプロジェクトから現在試行しているときに参照できます。

于 2012-09-03T11:34:46.680 に答える