Classe DatabaseSchemaProvider
Fornisce una classe di base per una famiglia di oggetti e metodi factory. Questi oggetti e metodi sono utilizzati per creare un'istanza di oggetti servizio correlati alla modellazione di schemi e script che, insieme, rappresentano l'oggetto principale di progetti di database in Visual Studio.
Gerarchia di ereditarietà
System.Object
Microsoft.Data.Schema.DatabaseSchemaProvider
Microsoft.Data.Schema.Sql.SqlDatabaseSchemaProvider
Spazio dei nomi: Microsoft.Data.Schema
Assembly: Microsoft.Data.Schema (in Microsoft.Data.Schema.dll)
Sintassi
'Dichiarazione
Public MustInherit Class DatabaseSchemaProvider _
Implements IExtension
public abstract class DatabaseSchemaProvider : IExtension
public ref class DatabaseSchemaProvider abstract : IExtension
[<AbstractClass>]
type DatabaseSchemaProvider =
class
interface IExtension
end
public abstract class DatabaseSchemaProvider implements IExtension
Il tipo DatabaseSchemaProvider espone i seguenti membri.
Costruttori
Nome | Descrizione | |
---|---|---|
DatabaseSchemaProvider | Inizializza una nuova istanza della classe DatabaseSchemaProvider utilizzando i tipi di costruttore specificati. |
In alto
Proprietà
Nome | Descrizione | |
---|---|---|
ExtensionManager | Ottiene l'oggetto ExtensionManager per il progetto di database corrente in Visual Studio Team System 2008 Database Edition. | |
FamilyName | Ottiene il nome di un gruppo di provider.Ad esempio, il nome della famiglia SQL Server di provider del database è "sql". | |
ModelSchema | Ottiene l'oggetto ModelSchema per questo provider. | |
UserInteractionServices | Se implementata in una classe derivata, ottiene l'oggetto UserInteractionServices per questo provider. |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
Equals | Determina se l'oggetto Object specificato è uguale all'oggetto Object corrente. (Ereditato da Object) | |
Finalize | Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object) | |
GetCompatibleDatabaseSchemaProviderType | Restituisce l'oggetto Type che rappresenta il tipo di provider adatto per la versione del database a cui punta la stringa di connessione specificata e per il nome della famiglia in questione. | |
GetCompatibleDatabaseSchemaProviderTypes | Restituisce un elenco di tipi di provider compatibili con questo provider. | |
GetHashCode | Funge da funzione hash per un determinato tipo. (Ereditato da Object) | |
GetSchemaUpgradeXslt | Se implementato in una classe derivata, restituisce XSLT per convertire un modello di schema della versione specificata in modo tale che corrisponda al modello di schema corrente. | |
GetService<TService> | Restituisce un oggetto servizio di cui è stata creata un'istanza che è registrato con questo provider e identificato dall'oggetto Type specificato. | |
GetServiceConstructor<TServiceConstructor> | Restituisce un costruttore per il servizio identificato dall'oggetto Type specificato. | |
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) | |
MemberwiseClone | Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object) | |
RegisterModelTypes | Se implementato in una classe derivata, registra i tipi di modello trovati nello schema del modello specificato. | |
SchemaVersionSupported | Restituisce un valore che indica se la versione specificata è uguale a quella del modello di schema o se XSLT è disponibile per convertire il modello di schema nella versione specificata. | |
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
In alto
Note
Utilizzare questa classe di base per creare un'implementazione concreta per un prodotto database specifico come SQL Server, rappresentato dalla classe SqlDatabaseSchemaProvider. SqlDatabaseSchemaProvider è utile come classe di base per ognuno dei diversi provider dello schema di database (DSP) per versioni specifiche di SQL Server, come Sql100DatabaseSchemaProvider e Sql90DatabaseSchemaProvider.
Implementazioni concrete della classe DatabaseSchemaProvider per i vari prodotti del database espongono questi servizi:
Analizzare un file di script in un modello di script.
Interpretare un modello di script in un modello dello schema.
Generare un modello di script da un modello di schema.
Generare un file di script da un modello di script.
Oltre a queste possibilità di alto livello, vengono esposti servizi più dettagliati, quali servizi di confronto e guida dell'interfaccia utente (UI) per nomi, icone o altri oggetti visualizzati dell'interfaccia utente. Questi servizi dettagliati sono forniti dalla classe DataProviderServices.
Le implementazioni DatabaseSchemaProvider abilitano anche le funzionalità dell'applicazione per dichiarare compatibilità con vari DSP. Ad esempio, se una funzionalità dichiara compatibilità con DatabaseSchemaProvider, quella funzionalità viene progettata per funzionare con interfacce astratte quali IDatabaseTable e IDatabaseColumn. Se una funzionalità dichiara compatibilità con un'implementazione concreta quale Sql100DatabaseSchemaProvider, quella funzionalità viene progettata per funzionare con interfacce astratte come ad esempio ISql100Table. Tale funzionalità può essere caricata solo se il progetto è anche del tipo di provider compatibile dichiarato. Questo dà la caratteristica accesso sicuro alla funzionalità che è specifica dell'implementazione concreta.
Codice thread safe
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.