動的リンクを解決するために、Mihai Cadariu (添付のスクリーンショット) によって提供される Web サービス通信を処理するために、カスタム作成されたプロキシ クラスを使用しています。ダイナミックリンク/コンポーネント リンクを解決するための LinkUrl パラメータを形成するために、以下のサンプル アプローチに従っています。しかし、そのスローエラー (スタックトレース、デバッグエラー) が添付されています。検証して、間違っている場所の入力を提供してください。渡すパラメーターが正しいかどうかをお知らせください
使用したアプローチ:
--> 2 つのコンポーネント Comp1、Comp2 があります (同じスキーマまたは異なるスキーマで作成できますが、問題はないと思います)
--> Comp2 は Comp1 内のコンポーネント リンクとして使用されています (comp1 にコンポーネント リンク フィールドがあります)。
--> 各コンプに対して 2 つの動的 CT の DCT1、DCT2 を作成しました (CT には単純な DWT、デフォルトの終了アクションがあります) 注: DD4T TBB を他のアプローチと同様の CT のセットに保持しようとしましたが、最終的に同じエラー結果が得られました
-->DWT コードには --> SomeLink があります (LinkResolver TBB がリンクを解決できるようにコンポーネント リンクをレンダリングするため) OTHWayLink も保持されます (クロス チェック用)
--> 2 つのページ Page1 (Comp1 + DCT1 を含む)、Page2 (Comp2 + DCT2 を含む) を作成し、両方のページをブローカー DB に公開しました。
-->私たちの目標は、Comp1 コンテンツ内に存在するコンポーネント リンク (Comp2) を解決することです。
-->GetDynamicLink() には、以下のパラメータを指定しました。エラー :400 (不正な要求) がスローされ、上記のログ トレースで例外がスローされました。
Param’s List --> string targetPageUri, string targetComponentUri, string targetTemplateUri, string linkText, bool showTextOnFail, string linkTagAttributes
Param’s we passed--> Page2 tcmid, Comp2 tcmid, DCT2 tcmid ,”some link txt”,true,”some string”;
-->GetComponentLink() には、以下のパラメータを提供しました。この場合、ページ内に動的 CT と非動的 CT の両方の組み合わせを保持しようとしましたが、上記のログ トレースでエラー :400 (不正な要求) と例外がスローされました。
Param’s List --> string targetComponentUri, string sourcePageUri, string excludeTemplateUri, string linkText, bool showTextOnFail, bool showAnchor, string linkTagAttributes
Param’s we passed --> Comp2 tcmid, Page1 tcmid, DCT1 tcmid, “some link txt”,true,true,”some string” ;
LinkingのLive ドキュメントを参照しています。
Mihai プロキシ コード サンプル:
エラー メッセージ: