Condividi tramite


Implementare una classe Command per un'estensione per l'elaborazione dati

L'oggetto Command formula una richiesta e la passa all'origine dati. Il testo del comando può avere forme sintattiche diverse, tra cui testo e XML. Se vengono restituiti risultati, l'oggetto Command restituisce i risultati come oggetto DataReader.

Per creare una classe Command, implementare IDbCommand. Implementare il metodo ExecuteReader per restituire un set di risultati come oggetto DataReader. Il metodo ExecuteReader della classe Command deve includere un'implementazione che accetti un'enumerazione CommandBehavior come argomento. 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. Un'implementazione di solo schema viene utilizzata per fornire un elenco di campi a Progettazione report. 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.

Facoltativamente, la classe Command può implementare IDbCommandAnalysis. Questa interfaccia consente a una classe di implementazione di analizzare una query e restituire un elenco di parametri della query. La funzionalità dell'interfaccia IDbCommandAnalysis viene utilizzata solo in Progettazione report. 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. È anche possibile visualizzare i parametri nella scheda Parametri della finestra di dialogo Set di dati.

Nota

Non implementare IDbCommandAnalysis se l'estensione per l'elaborazione dati personalizzata non supporta i parametri.

Per un'implementazione di esempio della classe Command, vedere la pagina degli esempi del prodotto SQL Server Reporting Services.