共通のサービスレイヤを共有する数多くの相互に関連したシステムがあります。さらに、それらは多くの一般的なUIコンポーネントです。カットアンドペーストを減らすため、現在および将来のすべてのプロジェクトで使用するためにコードをパッケージ化したいと考えています。現在、統合する必要があるプロジェクトは、ASP.net WebフォームとMVC 3ソリューションです。私は人々が進めるために「最良の」方法で入力してほしいです。.net Webコード共有設計のご協力
1つの実装では、別のWebプロジェクト(mvc)を作成し、他のアプリケーションと共通のセッションを共有することができます。このモデルの利点は、共通コンポーネントへのアップグレードでは、すべてのアプリケーションが共通要素を再インストールする必要がないことです。不都合なことに、一般的なコンポーネント(ユーザーと組織の管理)に対するコードの分離はあまり簡単ではありません。
もう1つの方法は、コードをナゲットパッケージにラップすることです。 WebFormsプロジェクトでは、AddMvc3ToWebFormsでラップすることができました。まっすぐなMVCプロジェクトの場合、それは単にフォルダとしてインストールすることができます。
他の代替手段はありますか?私はよりプラグイン可能なソリューション(例えば、MEFContrib)を得たいと思っていますが、MVCのやり方を決めるには十分な心配はありません。
任意のアイデア..