Sitecore で Nick Wesselman の Dynamic Place Holder テクニックを実装しようとしています。サイトコア 6.5 と asp.net を使用しています。
http://www.techphoria414.com/Blog/2011/August/Dynamic_Placeholder_Keys_Prototype http://www.techphoria414.com/Blog/2012/May/Sitecore_Page_Editor_Unleashed
Sitecore_Page_Editor_Unleashed BLOG で見つけたソースコードを使用しました
すべてのパイプラインが適切に機能しているようです。ただし、動的プレースホルダー コントロールでは、コントロールに 5 つの動的プレースホルダーがあるにもかかわらず、次のコード ビットは 0 (ゼロ) を返します。
Stack<Placeholder> stack = Switcher<Placeholder, PlaceholderSwitcher>.GetStack(false);
問題を特定するために、非常に単純なサイトコア インスタンスを作成しました。1 つのレイアウトと 1 つのサブレイアウト。
コード ビハインド サブレイアウトには、デモ用に次のコードがあります。
var list = new List<int>();
for (int i = 0; i < 5; i++)
{
list.Add(i);
}
Repeater.DataSource = list;
DataBind();
これは ascx/sublayout のソースです
<asp:Repeater runat="server" ID="Repeater">
<ItemTemplate>
<mi:DynamicKeyPlaceholder runat="server" ID="pl" Key="place"></mi:DynamicKeyPlaceholder>
</ItemTemplate>
</asp:Repeater>
その結果、5 つのプレースホルダーすべてが同じキーを保持しています。
何をすべきか?