5

重複の可能性:
Razor ASP.Net MVC3 の別のビューから @helpers を使用する

私の環境:Razorを使用したASP.NET MVC3。

ディレクトリ内の宣言型ヘルパーには、再利用可能なビュー ロジックがいくつかあります。これらは、使用するすべてのビューに対してパブリックApp_Dataとして定義されています。@helper bar() { /* markup */ }

また、通常の Razor ビューでは、「プライベート」ヘルパーを次のように記述できます。

@functions {
  public IHtmlString foo() { return new MvcHtmlString("foo"); }
}

宣言型ヘルパー内に「プライベート」関数を持ちたい、または、宣言型ヘルパー ファイル内に「プライベート」宣言型ヘルパーを持ちたい。別の方法として、通常のヘルパー クラスを作成することもできますが、この場合はマークアップの方が冗長でなく、保守が容易であるため、より好まれます。

なぜこれをしたいのですか?ビューがあり、何らかのマークアップを取り込みたいとします。これは、宣言型ヘルパーを参照することによって行われます。しかし、その DH は、共通のマークアップを使用する他の DH でいっぱいのファイルにあります。したがって、そのすべての共通点を 1 つの場所に移動する必要があります。つまり、そのファイル内の DH のみが表示できる「プライベート」宣言関数/ヘルパーです。

4

0 に答える 0