2

複雑な MVC サイトを複数のクライアントに作成/公開する必要があります。それぞれのクライアントにはほとんど共有機能がありますが、クライアント固有のコントローラー/ビュー/ビジネス ロジックなどのカスタム要素も含まれています。ほとんどのクライアントは、サイト自体をホストすることを主張し、機能を持っていません。他人に知られたくない。

この SO の投稿このを読んだ後、ほとんどのシナリオを処理できると思われる MVC マルチテナンシーの手段を作成しました。

Stack Overflow に添付できないので、ここに投稿しました(すべてを読む必要はありません。ほとんどがスクリーンショットです!)。

基本は、複数のクライアント プロジェクトによって参照される汎用プロジェクトを持つことです。クライアント プロジェクトはジェネリックと同様の構造を持つことができ、コード/コントロール/ビューのオーバーライドを使用したい場合に優先されます。

それは全体の基盤であるため、他の人がより簡単/より良い方法でそれを行っていることを見つけるためだけに何かを実装したくはありません.

私の質問は少し毛むくじゃらですが、単純です - より良い方法はありますか?

4

1 に答える 1

1

あなたのアーキテクチャはほぼ正しいようです。一般的なことと、クライアントのアドオンがコアアプリケーションとどのように通信するかについて、本当に注意する必要があるとだけ言っておきます.

CVS にベース プロジェクトを作成し、それを参照するクライアント固有のブランチ (git サブモジュールのように) を作成して、誰もがコアから適合できるようにします。

本番バージョンと QA バージョンのロールアウトも、クライアントによっては互いにかけ離れた異なるバージョンになる可能性があるため、注意が必要です。

于 2013-05-08T18:23:11.840 に答える