Implementieren einer Command-Klasse für Datenverarbeitungserweiterungen
Das Command-Objekt formuliert eine Anforderung und übergibt sie an die Datenquelle. Der Befehlstext kann viele verschiedene syntaktische Formate haben, einschließlich Text und XML. Wenn Ergebnisse zurückgegeben werden, gibt das Command-Objekt die Ergebnisse als DataReader-Objekt zurück.
Um eine Command-Klasse zu erstellen, implementieren Sie IDbCommand. Implementieren Sie die ExecuteReader-Methode, um ein Resultset als DataReader-Objekt zurückzugeben. Die ExecuteReader-Methode Ihrer Command-Klasse sollte eine Implementierung enthalten, die eine CommandBehavior-Aufzählung als Argument verwendet. Wenn Sie die Datenverarbeitungserweiterungen im Berichts-Designer bereitstellen, geben Sie eine Implementierung an, die einen SchemaOnly-Fall in der Methode ExecuteReader behandelt. Eine Schema-Only-Implementierung wird verwendet, um dem Berichts-Designer eine Felderliste zur Verfügung zu stellen. Das DataReader-Objekt, das von der Methode ExecuteReader zurückgegeben wurde, muss Typen- und Namensdaten für die Felder oder Spalten in Ihrem Resultset enthalten.
Optional kann die Command-Klasse IDbCommandAnalysis implementieren. Mithilfe dieser Oberfläche kann eine Implementierungsklasse eine Abfrage analysieren und eine Parameterliste in der Abfrage zurückgeben. Die Funktionen der IDbCommandAnalysis-Schnittstelle werden nur im Berichts-Designer verwendet. Wenn Sie IDbCommandAnalysis implementieren, können Benutzer des Berichts-Designers zur Eingabe von Parametern aufgefordert werden, wenn ein Bericht im Vorschaumodus ausgeführt wird. Außerdem können Sie die Parameter auf der Registerkarte Parameter des Dialogfelds Dataset anzeigen.
Hinweis |
---|
Sie sollten IDbCommandAnalysis nicht implementieren, wenn die benutzerdefinierte Datenverarbeitungserweiterung keine Parameter unterstützt. |
Eine Beispiel-Command-Klassenimplementierung finden Sie unter SQL Server Reporting Services Product Samples.
Siehe auch
Verweis
Reporting Services-Erweiterungsbibliothek