4

ASP.NET MVC 3 が領域の再利用をサポートしていないことは知っています。これは、たとえば Web アプリケーションのユーザー管理領域では非常に便利ですが、部分ビューについてはどうでしょうか。

Razorアプリケーション内で簡単に再利用できる(またはWebFormViewEngine問題ではない) 部分ビューとして Pager の「コントロール」があるとしMVCます。

新しいアプリケーションで部分ビューを作成し、コードをコピーして貼り付ける以外に、複数の MVC アプリケーションで再利用することはできますか?

4

2 に答える 2

7

これを可能にするフレームワークには何も組み込まれていません。複数の ASP.NET MVC アプリケーション間でビューを埋め込んで再利用できるMVCContrib ポータブル領域を参照してください。次のブログ投稿も役立つ場合があります。

免責事項: どちらのアプローチも、コンパイル済みの ASP.NET アプリケーションでは機能しないカスタムVirtualPathProviderの作成に依存しています。したがって、出荷前にアプリケーションをプリコンパイルする場合は、それらを使用しないでください。個人的に私はこの状況にあり、私が最終的に行ったことは、それぞれのビューモデルを含む必要なすべてのビューとアセンブリを含むカスタム NuGet パッケージを作成することであり、開発者がしなければならないことは、NuGet パッケージを一元化された場所からインストールすることだけですイントラネット/インターネット。

于 2011-03-08T22:55:09.950 に答える
4

Jess Chawick による O'Reilly の本「Programming ASP.NET MVC 4」には、必要なものを説明する章があります。「第 15 章 - 再利用可能な UI コンポーネント」

基本的に、ビューを使用してクラス ライブラリ プロジェクトを作成します。RazorGenerator をインストールし、.cshtml ファイルのプロパティでカスタム ツールとして設定する必要があります。これにより、.cshtml ファイルから C# コードが生成されます。MVC アプリケーションで標準検索パスの外にあるビューを見つけるには、Nuget Package PrecompiledMvc​​Engine を使用する必要があります。

この本は非常によく書かれており、それを行う方法についてのステップバイステップの情報を見つけることができます.

于 2014-03-26T13:55:34.923 に答える