2017-06-15 5 views
0

新しいMVCプロジェクトを構築しようとしています。私は親ドメインを持っていると思って、私は異なるサブドメインで複数のサブ製品をホストしています。複数のサブドメインのC#MVCプロジェクトアーキテクチャ

[ユーザーにとってはlife.insurance.comとgeneral.insurance.comのようにまったく異なる製品となります。また、2つの異なるチームがこの2つの子製品で作業している可能性もあります別のリリース日。

主なものは、Webプロジェクトレイヤーを変更したいです。ドメイン層、DAL層などが一般的です。私はMVCでいくつかのベスト業界慣行を探していました。私は心の中に持っている

思考:

  1. Webプロジェクトで異なるMVCエリアを作成します。しかし、プロダクトAコードをプロダクションに送信したいが、プロダクト2コードを送信しない場合はどうすればよいでしょうか。 [これを解決する方法]

  2. 異なるWebプロジェクトを使用して唯一の生産でDLLを変更します。

お勧めします。またはこのシナリオを処理する新しい方法?

+0

異なるWebプロジェクトをビジネスルールの異なる製品とクラスライブラリに使用します。共通のビジネスルールは1つのクラスライブラリに入れ、プロジェクト固有のビジネスルールは別のクラスライブラリに入れなければなりません。 –

答えて

0

メインプロジェクトソリューションでは、サブドメインごとに個別のMVCプロジェクトを作成します。

0

DAL、DomainLayer、Crosscutting、DTOs、UI、Testなどのプロジェクトを複数作成することができます。必要なだけ多くのサンプルを拡張することができます。具体的な質問を考慮すると、あなたが指摘したようにエリアを使ってリクエストをルーティングすることができます。さらに、異なるプロジェクトにエリアを実装することで、Webプロジェクトを変更せずにソリューションを拡張することができます。しかしながら; WebプロジェクトにDLL参照を追加すると、Webプロジェクト全体を再構築せずに特定のDLLを直接変更できないことを考慮する必要があります。これを実現するには、実行時にプラグインアセンブリを解決する必要があります。したがって、いつでも、特定のDLLをロードするのに役立つAssembly.Loadを使用することができます。

関連する問題