2011-07-27 12 views
3

私はしばらくの間、ASP.NET MVCに取り組んできました。しかし、今私は壁にぶつかっている。ASP.NET MVC複数のイントラネットプロジェクト

私は新しいイントラネットサイトに取り組んでいます。そこでは、数ページのページから完全なアプリケーションに至るまで、多くのプロジェクトをホストする必要があります。私はプロジェクトを区別するためにエリアを使っています。これまでのところすべて良いです。

解決策が大きすぎると、すべての領域(複数のプロジェクト)で構成されるプロジェクト全体をコンパイルするために必要なすべての簡単な変更が必要です。私はいつも、私がdllをコンパイルしアップロードすると、ライブに変更を加えることを恐れている。

私は複数のプロジェクトを同じレイアウトで共有できますが、各プロジェクトを個別のdllにコンパイルすることはできますか?事前に

おかげ

EDIT

みんなありがとう、私はPortable Areas as an ASP.NET MVC Projectに続いて、彼は始めるためにステップバイステップでより簡単に物事を説明しているようです。

答えて

2

MVCContribのポータブルエリア機能の使用を検討しましたか? - ポータブルエリアソリューションはあなたのために動作しない場合はまた別の問題Multiproject areas in ASP.Net MVC 3


Eilonからの応答を読んhere

それについての記事を読んで、それはおそらくあなたのリファクタリング/再構築のための時間です単一のWebプロジェクトを別々のWebプロジェクトに変換します。イントラネットサイトであるため、1つのドメインの下で別々のWebサイトを実行できるように、いくつかのサブドメインをセットアップすることをお勧めします。

例:

www.yourdomain.com

admin.yourdomain.com

など

あなたの機能を分離しての異なる領域を更新することができますこの方法calendar.yourdomain.com

イントラネットに影響を与えずにもちろん、サイトに応じて、サブドメイン全体のシングルサインオンを調べる必要があります。

通常、すべての共通機能をすべてのWebプロジェクトで使用されるコアプロジェクト(クラスライブラリ)に抽出し、各Webプロジェクトをできるだけ軽量に保ちます。次に、さまざまなWebプロジェクトまたはWebプロジェクトのグループに対して個別のソリューションを作成できます。

また、1つのプロジェクトで行った変更が現在のソリューションにない他のプロジェクトに影響を与えるかどうかを簡単に確認できるように、継続的な統合/構築サーバーを検討することを検討してください。

+1

1つのプロジェクトでは、実際にモジュール化して、各ビジネス機能がモジュール内に完全に自己完結しているようにしました。コントローラ、ビュー、データアクセスなどが含まれています。これにより、ビンフォルダにアセンブリをドロップするなどの簡単な機能が展開されました。そう、ええ、 "ポータブルエリア"のコンセプトの何かは、間違いなく考慮すべきものです。 – GalacticCowboy

+0

(これは、MVC 1.0で書かれています。) – GalacticCowboy

+0

@GalaticCowboy MEFや他のIoCフレームワークのようなものを使って、モジュールをスキャンしてスキャンしたのですか?自分でロールしましたか? – brodie

関連する問題