DatabaseSchemaProvider クラス

スキーマとスクリプトのモデリングに関連するサービス オブジェクトをインスタンス化するための一連のファクトリ オブジェクトとファクトリ メソッドを公開します。

名前空間 :  Microsoft.Data.Schema.Extensibility
アセンブリ :  Microsoft.Data.Schema (Microsoft.Data.Schema.dll 内)

構文

'宣言
Public MustInherit Class DatabaseSchemaProvider _
    Implements IExtension
'使用
Dim instance As DatabaseSchemaProvider
public abstract class DatabaseSchemaProvider : IExtension
public ref class DatabaseSchemaProvider abstract : IExtension
public abstract class DatabaseSchemaProvider implements IExtension

解説

このインターフェイスは、アプリケーションの他の部分から、SQLSchemaProvider や MySqlServicesProvider などの具象実装を抽出することを目的としています。 高レベルでは、DatabaseSchemaProvider 実装 (IDSP) は、次のサービスを公開します。

  • スクリプト ファイルを解析してスクリプト モデルにする。

  • スクリプト モデルをスキーマ モデルに解釈する。

  • スキーマ モデルからスクリプト モデルを生成する。

  • スクリプト モデルからスクリプト ファイルを生成する。

これらの高度な機能に加え、比較サービスや UI オブジェクト (表示名やアイコンなど) の UI ヘルパーなど、より詳細なサービスもあります。 これらの詳細なサービスは、最終的に IDatabaseServices プロバイダから公開されます。

DatabaseSchemaProvider 実装のもう 1 つの目的は、アプリケーションの機能でさまざま IDSP との互換性を宣言するために使用できるキーとしての機能を果たすことです。 たとえば、機能で DatabaseSchemaProvider との互換性を宣言した場合、その機能は ITable や IScriptDom などの抽象インターフェイスを使用して動作するように設計されます。 また、機能で SqlSchemaProvider などの具象実装との互換性を宣言した場合は、プロジェクトが宣言された互換性のあるプロバイダの種類でない限り、その機能は読み込まれません。 これにより、最初に動的検出操作を実行しなくても、その機能は具象実装に固有の機能に安全にアクセスできるようになります。

継承階層

System.Object
  Microsoft.Data.Schema.Extensibility.DatabaseSchemaProvider
    Microsoft.Data.Schema.Sql.SqlDsp.SqlDatabaseSchemaProvider

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバは、スレッド セーフです。 インスタンス メンバの場合は、スレッド セーフであるとは限りません。

参照

参照

DatabaseSchemaProvider メンバ

Microsoft.Data.Schema.Extensibility 名前空間