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

L'oggetto Command formula una richiesta e la passa all'origine dati.The Command object formulates a request and passes it on to the data source. Il testo del comando può avere forme sintattiche diverse, tra cui testo e XML.The command text can take many different syntactical forms, including text and XML. Se vengono restituiti risultati, l'oggetto Command restituisce i risultati come oggetto DataReader.If results are returned, the Command object returns results as a DataReader object.

Per creare una classe Command, implementare IDbCommand.To create a Command class, implement IDbCommand. Implementare il metodo ExecuteReader per restituire un set di risultati come oggetto DataReader.Implement the ExecuteReader method to return a result set as a DataReader object. Il metodo ExecuteReader della classe Command deve includere un'implementazione che accetti un'enumerazione CommandBehavior come argomento.The ExecuteReader method of your Command class should include an implementation that takes a CommandBehavior enumeration as an argument. Se si distribuisce l'estensione per l'elaborazione dati in Progettazione report, fornire un'implementazione in grado di gestire un caso SchemaOnly nel metodo ExecuteReader.If you deploy your data processing extension to Report Designer, provide an implementation that handles a SchemaOnly case in the ExecuteReader method. Un'implementazione di solo schema viene utilizzata per fornire un elenco di campi a Progettazione report.A schema-only implementation is used to supply Report Designer with a fields list. L'oggetto DataReader restituito dal metodo ExecuteReader deve contenere informazioni relative a tipo e nome per i campi, o le colonne, del set di risultati.The DataReader object returned by the ExecuteReader method needs to contain type and name information for the fields, or columns, in your result set.

Facoltativamente, la classe Command può implementare IDbCommandAnalysis.Optionally, your Command class can implement IDbCommandAnalysis. Questa interfaccia consente a una classe di implementazione di analizzare una query e restituire un elenco di parametri della query.This interface enables an implementing class to analyze a query and return a list of parameters in the query. La funzionalità dell'interfaccia IDbCommandAnalysis viene utilizzata solo in Progettazione report.The functionality of the IDbCommandAnalysis interface is only used in Report Designer. Quando si implementa IDbCommandAnalysis, si consente agli utenti di Progettazione report di ricevere una richiesta per i parametri ogni volta che un report viene eseguito in modalità di anteprima.When you implement IDbCommandAnalysis, you enable users of Report Designer to be prompted for parameters whenever a report is run in preview mode. È anche possibile visualizzare i parametri nella scheda Parametri della finestra di dialogo Set di dati.In addition, you can view the parameters in the Parameters tab of the Data Set dialog.

Nota

Non implementare IDbCommandAnalysis se l'estensione per l'elaborazione dati personalizzata non supporta i parametri.You should not implement IDbCommandAnalysis if your custom data processing extension does not support parameters.

Per un'implementazione di esempio della classe Command, vedere la pagina degli esempi del prodotto SQL Server Reporting Services.For a sample Command class implementation, see SQL Server Reporting Services Product Samples.

Vedere ancheSee Also

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