ASP.NET 2.0 の「プラグイン」によれば、
ASP.NET 2.0 の新機能の中で最も「魅力的な」機能はマスター ページ、テーマ/スキン、
WebPart のメンバーシップとロールの管理、ユーザー定義の属性、およびページのパーソナライゼーション。
最初の 2 つの項目を除き、残りは *** プロバイダーによって提供されるサービスに基づいています。
これらのプロバイダー (クラス) は通常、Microsoft ドキュメントで次のように定義されています: サービスを提供する...、
一般的なコントロールクラスなどと同じようですので、そのまま使用してください。実際、これらのプロバイダー (クラス)
これは、Microsoft .NET の開発の方向性を非常に強く示唆しています。
この方向は、アプリケーション (Web サイト) を「プラグイン」することです。
「プラグイン」は、問題を視覚的に説明するために弟が借用したものであり、必ずしも正確かつ厳密ではなく、Microsoft ドキュメントの「プラグイン」の概念とは異なります。
ソフトウェアとハードウェアの両方の観点から「プラグイン」と呼ばれる理由を簡単に説明します。
ハードウェアの観点から: PC を想像すると、web.config は「マザーボード」とみなせるでしょうか。
これらのプロバイダーは、マザーボードに接続されているグラフィックス カード、サウンド カード、ネットワーク カードなどです。より抽象的に言えば、これらのプロバイダーは実際にはドライバーと同等であると考えることができます。 Microsoft は、Microsoft ブランドの製品を提供します。
SqlMembershipProvider、SqlRoleProvider、SqlProfileProvider、SqlPersonalizationProvider
プロバイダーでは、web.config でそれらを再指定することでそれらを置き換えることもできます (CMOS の設定または「ジャンパー」の実行と同等)。
これは、互換性基準を満たしている限り、グラフィックス カード (またはサウンド カード、ネットワーク カードなど) のブランドやモデルに関係なく、マザーボードに接続して使用できるのと同様です。
ソフトウェアの観点から考える: Eclips のリリース以来、開発プラットフォーム上の「プラグイン」も人気が高まっています (プラグインはブラウザーで長い間利用可能でした)。
しばらくの間、Java プログラマーは「プラグイン」を作成していました。
.NET側ではVS.NETがあるので影響はあまり大きくありませんが、「プラグイン」も使います。
兄弟の皆さんは、VSS が「プラグイン」の形で VS.NET に統合されていることにお気づきでしょうか。
より純粋な例は、Borland Togather for .NET です。 IDE に統合されたこれらの「プラグイン」から、「プラグイン」がこれらのプロバイダーに依存して、一種の機能拡張とアップグレード/置き換えを提供していることがわかります。
自社で開発したWebサイトプログラムも「プラグイン」にすることができます。例: ページのパーソナライゼーション (WebPart) 機能が必要ない場合、PersonalizationProvider を「インストール」する必要はありません。
(実際には、逆に言うと、どのプロバイダを「インストール」するにはどのような機能が必要かということですが、現在ではそれらはすべてプリインストールされています)。
では、将来のアプリケーション開発は、コンピューター市場に機械を設置するのと同じで、単に組み立てて設置するだけになるのでしょうか?
答えは「はい」です。Microsoft は、VSTS (Visual Studio Team System) 製品を披露するときに、このように工夫しました。
コードを 1 行も書かずに Web サイトを組み立てることができ、パフォーマンス/ストレス テストの結果も悪くありません (もちろん、単に「プラグイン」を使用するわけではありません。いずれにせよコンポーネントと呼ぶ必要があるでしょう)。
本当に MDA よりも MAD です (冗談です)。
答えも否定的です。私の意見では、結局のところ、これはマイクロソフトのエンジニアが理想的な条件下で「魔法」を実行したものであり、一方で、私たちはすべてのアプリケーションについてマイクロソフトのエンジニアほどプロフェッショナルではありません。率直に言って、特別なビジネス ニーズが必ずしも適用されるわけではありません。さらに、Microsoft が提供する SQL シリーズ プロバイダはすべて 2 層アーキテクチャに従って実装されており、今日一般的な多層アーキテクチャに統合するのは困難です。
http://msdn.microsoft.com/asp.net/downloads/providers/default.aspx?pull=/library/en-us/dnaspp/html/asp2prvdr01.asp
これらのプロバイダーのサンプル コードのダウンロードは、プロバイダーを複数層の実装に分割できるように提供されています。
つづく...
http://www.cnblogs.com/windman/archive/2006/09/20/509590.html