Implementazione di una classe Connection per un'estensione per l'elaborazione datiImplementing a Connection Class for a Data Processing Extension

Il connessione oggetto rappresenta una connessione al database o una risorsa simile ed è il punto di partenza per gli utenti di un SQL ServerSQL Server Reporting ServicesReporting Services estensione per l'elaborazione dati.The Connection object represents a database connection or similar resource and is the starting point for users of a SQL ServerSQL Server Reporting ServicesReporting Services data processing extension. Rappresenta le connessioni al server di database, sebbene qualsiasi entità con un comportamento simile può essere esposto come un connessione.It represents connections to database servers, though any entity with similar behavior can be exposed as a Connection.

Per implementare un connessione dell'oggetto, creare una classe che implementa IDbConnection e facoltativamente implementa IDbConnectionExtension.To implement a Connection object, create a class that implements IDbConnection and optionally implements IDbConnectionExtension.

Nell'implementazione è necessario assicurarsi che prima dell'esecuzione dei comandi venga creata e aperta una connessione.In your implementation, you must ensure that a connection is created and opened before commands can be executed. Assicurarsi che l'implementazione richieda ai client di aprire e chiudere le connessioni in modo esplicito, anziché lasciare che l'implementazione apra e chiuda le connessioni in modo implicito per il client.Ensure that your implementation requires clients to open and close connections explicitly, rather than having your implementation open and close connections implicitly for the client. Dopo aver stabilito la connessione, eseguire i controlli di sicurezza.Perform your security checks when the connection is obtained. Richiedendo una connessione esistente per le altre classi nell'estensione per l'elaborazione dati di SSRSSSRS, è possibile garantire che vengano sempre eseguiti i controlli di sicurezza quando si utilizza l'origine dati.Requiring an existing connection for the other classes in your SSRSSSRS data processing extension will then ensure that security checks are always performed when working with your data source.

Le proprietà della connessione desiderata vengono rappresentate come stringa di connessione.The properties of the desired connection are represented as a connection string. È consigliabile che l'estensione per l'elaborazione dati di SSRSSSRS supporti la proprietà ConnectionString utilizzando il sistema familiare di coppia nome/valore definito da OLE DB.It is strongly recommended that SSRSSSRS data processing extensions support the ConnectionString property using the familiar name/value pair system defined by OLE DB.

Nota

Connessione gli oggetti sono spesso elevato utilizzo di risorse per ottenere, pertanto è opportuno considerare il pool di connessioni o altre tecniche per risolvere questo problema.Connection objects are often resource-intensive to obtain, so you may want to consider pooling connections or other techniques to mitigate this.

IDbConnection eredita da IExtension.IDbConnection inherits from IExtension. È necessario implementare l'interfaccia IExtension come parte dell'implementazione della classe Connection.You must implement the IExtension interface as part of your connection class implementation. L'interfaccia IExtension consente a una classe di implementare un nome di estensione localizzato e di elaborare le informazioni di configurazione specifiche dell'estensione archiviate nel file di configurazione di Reporting ServicesReporting Services.The IExtension interface enables a class to implement a localized extension name and to process extension-specific configuration information stored in the Reporting ServicesReporting Services configuration file.

Il connessione oggetto contiene i LocalizedName proprietà tramite l'implementazione di IExtension.Your Connection object contains the LocalizedName property through its implementation of IExtension. È consigliabile che le estensioni per l'elaborazione dati di Reporting ServicesReporting Services supportino la proprietà LocalizedName, in modo che gli utenti possano visualizzare un nome familiare e localizzato per l'estensione in un'interfaccia utente, ad esempio Gestione report.It is strongly recommended that Reporting ServicesReporting Services data processing extensions support the LocalizedName property, so that users encounter a familiar, localized name for the extension in a user interface, such as Report Manager.

IExtensionconsente inoltre il connessione oggetto da recuperare ed elaborare i dati di configurazione personalizzati archiviati nel file RSReportServer. config.IExtension also enables your Connection object to retrieve and process custom configuration data stored in the RSReportServer.config file. Per ulteriori informazioni sull'elaborazione dei dati di configurazione personalizzati, vedere il metodo SetConfiguration.For more information about processing custom configuration data, see the SetConfiguration method.

La classe che implementa IExtension non viene scaricata dalla memoria quando vengono scaricate le altre classi delle estensioni per l'elaborazione dati.The class that implements IExtension is not unloaded from memory when the rest of your data processing extension classes are unloaded. Per questo motivo, è possibile utilizzare il estensione classe per archiviare informazioni sullo stato tra le connessioni o per archiviare i dati che possono essere memorizzati nella cache in memoria.Because of this, you can use your Extension class to store cross-connection state information or to store data that can be cached in memory. Il estensione classe rimane in memoria purché il server di report è in esecuzione.Your Extension class remains in memory as long as the report server is running.

È possibile estendere il connessione classe per includere il supporto per le credenziali in Reporting ServicesReporting Services implementando IDbConnectionExtension.You can extend your Connection class to include support for credentials in Reporting ServicesReporting Services by implementing IDbConnectionExtension. Quando si implementa il IntegratedSecurity, UserName, e Password le proprietà del IDbConnectionExtension interfaccia, si abilita il la sicurezza integrata casella di controllo e Username e Password caselle di testo del origine dati finestra di dialogo in Progettazione Report.When you implement the IntegratedSecurity, UserName, and Password properties of the IDbConnectionExtension interface, you enable the Integrated Security check box and Username and Password text boxes of the Data Source dialog in Report Designer. In questo modo, è possibile consentire a Progettazione report di archiviare e recuperare le credenziali per le origini dati che supportano l'autenticazione.This enables Report Designer to store and retrieve credentials for data sources that support authentication. Le credenziali vengono archiviate in modo protetto e utilizzate quando viene eseguito il rendering dei report in modalità di anteprima.The credentials are stored securely and used when rendering reports in preview mode.

Nota

L'implementazione di IDbConnectionExtension richiede in modo implicito che vengano implementati i membri delle interfacce IDbConnection e IExtension.Implementing IDbConnectionExtension implicitly requires you to implement the members of the IDbConnection and IExtension interfaces.

Per un esempio connessione implementazione della classe, vedere SQL Server Reporting Services Product Samples.For a sample Connection class implementation, see SQL Server Reporting Services Product Samples.

Vedere ancheSee Also

Estensioni di Reporting Services Reporting Services Extensions
Implementazione di un'estensione di elaborazione dei dati Implementing a Data Processing Extension
Libreria di estensioni di Reporting ServicesReporting Services Extension Library