私は、顧客に販売されるコマースサービスである大きなASP.NET MVCサイトに取り組んでいます。私たちは大部分が小規模および大規模な機関に販売していますので、シュリンクラップの規模ではありません。これらの大規模な顧客は、サイトに合わせてレイアウトをカスタマイズすることを含め、主に幅広いカスタマイズを行うように求めています。フォークなしで顧客固有のビューのカスタマイズをサポートするためのASP.NET MVC 3サイトを設計する
私たちの現在の考えは、MVCを使用しても、他のコードを呼び出すような非常にシンプルなコントローラでは(推奨されているように)自然な結論に至っても、ビューは非常に問題になります。いずれにしても私たちが使用していたようなRazorではない。それらをサブクラス化して「この顧客のために少し余分なことをする」と言うのは難しいです。特に、同じ構築物に対してわずかに異なるHTMLを提供することは困難です。
マルチテナントとシングルテナントのどちらかの作業をきれいに行うことはできません.1人以上の顧客のカスタマイズが徹底していても、コードベースをフォークすることは望ましくありません。 (可能な限り、すべての顧客に同型のデータベース構造を維持したいと思っていますが、マルチテナントの場合はそれを行う方法ですが、すべてのテナントは規模の面で独自のIIS Webサイトでなければなりません。分離)。カスタムビューのレイヤーをオーバーレイする方法を考え出しても、ビュー内でわずかなロジックの不一致が生じる可能性があります。
これを行う方法の現在の状態は?戦争の話は何ですか? (これは主観的なものかもしれませんが、これを本質的に完全に打ち消すパターンやアプローチがあれば、それは正しい答えです)。
私は午前中です詳細を提供して幸いです。
アップデート:これまでもこれをレビューしており、その間に他のアーキテクチャ上の問題を修正しています。私は何をすべきかを決めるまでにまだ答えを受け入れようとしています。 – Jesper
さらに別のアップデート:まだこの段階には達していません。私は彼らがどのようにそれを行うスタック交換を求めることを考えているので、彼らは私たちの問題は、同期機能のセットを除いて正確にあることを私に打つ。私は答えを選ぶことを控えているわけではないので、個人的な経験に基づいたものであり、非常に具体的な助言を得ているというメリットについて、私は@ tvanfossonの答えを受け入れましたが、いずれにしてもこれを再評価する必要があるでしょう。 – Jesper