0

各テンプレートに 1 つずつ手動で追加せずに、いくつかのテンプレートにサブレイアウト (ユーザー コントロール) を追加することは可能ですか?

現在、すべての一般的なサブレイアウトを各テンプレートの _standard 値に追加してレンダリングしています。より良い実装を探しています。

4

2 に答える 2

1

すべてのテンプレートにサブレイアウトを追加しないようにするには、

テンプレートを作成し、すべての必須フィールドを同じテンプレートに追加します。その標準値で、サブレイアウトを割り当てます。

必要なすべてのテンプレートでこのテンプレートを継承します。これは2つの場合に役立ちます。

  1. すべてのテンプレートで共通のフィールドを作成する必要はありません
  2. すべてのテンプレートで共通のサブレイアウトを割り当てる必要はありません。
于 2013-06-12T06:03:45.243 に答える
1

これは、データ テンプレートで継承を使用する優れたケースです。「基本」テンプレートから継承することにより、他のテンプレートを 1 つの場所 (基本テンプレートの標準値) から制御できます。

または、[プレゼンテーション] > [詳細] ダイアログにある [コピー先] 機能を使用して、あるアイテムから別のアイテムにプレゼンテーションを簡単にコピーすることもできます。

3 番目のオプションは、サブレイアウトを .aspx または .cshtml ファイルに直接追加して、レイアウトにベイクすることです。ただし、このシナリオでは、条件付きでレンダリングするロジックが含まれていない限り、そのレイアウトを使用するすべてのアイテムにサブレイアウトが表示されます。

于 2013-06-11T21:27:10.390 に答える