1

認証されたユーザーが属する役割に応じて、サイトの管理者が使用する 2 つの別々の領域を作成したプロジェクトがあります。2 つの領域の間に重複する機能がいくつかありますが、それらを 1 つの領域に結合するには十分ではありません。UI のために行ったことは、2 つの領域内の同様のビューから含まれる部分ビューを作成することですが、部分ビューを物理的に配置する場所を決定するのに苦労しています。

~/Views/Shared に配置しても意味がありません。ルート レベルのビューはこの特定の部分ビューを使用しないためです。また、ファイルを ~/Areas/[Area]/Views/Shared に配置しても意味がありません。どちらの領域もこの部分ビューを直接「所有」していないためです。

このシナリオでのベスト プラクティスの場所はどこだと思いますか?

4

1 に答える 1

2

~/Views/Shared はここでは最適なソリューションではないと思いますが、これらの部分的なビューは、別のコントローラーである2 つのAreas間で実際に共有されていると思います。

ただし、使用できます

Html.Partial(pathToView, model)

関数を使用して部分ビューを含めることができます。これは、好きな場所に配置できます。あなたが言及した例でさえ:

Html.Partial("~/Areas/[Area]/Views/Shared/PartialViewFile.cshtml", model)

または:

Html.Partial("~/Areas/Shared/Views/PartialViewFile.cshtml", model)

すべてのエリアがビューを共有し、特定のエリアに属していないため、このソリューションは私にとってより関連性があるようです。

于 2012-08-13T19:34:24.487 に答える