私は最近、大規模なエンタープライズ システムのデモに参加しました。このシステムの Web ページは、クライアントが追加したフィールドを含めるようにカスタマイズできます。私が理解している方法では、それらのアーキテクチャは次のレイヤーで構成されています。
- データベース
- Web サービス API
- レイアウトを指示する XML ファイル
- XML ファイルから生成される Web ページ。
簡単にブランド化できる Web ポータルの構築を調査するように依頼されたとき、それは良い方法だと思いました。今の問題は、それをどのように設計するかです。
データベースと Web サービス層については理解していますが、.NET で Web サイトを構築するさまざまな可能性に少し戸惑っています。
上記のカスタマイズ性とアーキテクチャの要件を考慮すると、オプションを理解する方法は次のとおりです。
- Webforms - 私が最もよく知っているオプションですが、本質的にはコード ビハインドで強化された HTML です。XML レイアウトのアイデアで機能させるには、おそらく多くの作業が必要になると思います。
- WPF - XAML 中間層が組み込まれていますが、私が理解しているように、WPF は実際にはブラウザー アプリケーションでのみ使用でき、Web サイトでは使用できません。
- Silverlight - Web サイトよりもアプレットの構築に適していますよね?
- MVC - これは興味深いように見えますが、私が見たすべてのデモでは Entity Framework も使用されています。すべての自動コード生成を備えた Entity Framework は、まったく新しいアプリケーションにより適しているように思えます。私の場合、すでに存在する非常に大きなデータベースがあります。
上記のいずれも適切でない場合は、別の方法を考えました。ブランディング要素を返す Web サービスを使用して、標準的な Web フォーム サイトを作成することができます。これは、最初に説明したものとまったく同じではありませんが、私のニーズには十分です。
それとも、間違った木を吠えていますか?