Führen Sie mehrere SQL-Befehle in einem Roundtrip aus

Ich erstelle eine Anwendung und möchte mehrere Abfragen in einem einzigen Roundtrip zur Datenbank zusammenfassen. Nehmen wir zum Beispiel an, eine einzelne Seite muss eine Liste von Benutzern, eine Liste von Gruppen und eine Liste von Berechtigungen anzeigen.

Ich habe also procs gespeichert (oder nur einfache SQL-Befehle wie "select * from Users") und möchte drei davon ausführen. Um diese eine Seite zu füllen, muss ich 3 Rundreisen machen.

Jetzt konnte ich einen einzelnen gespeicherten Prozess schreiben ("getUsersTeamsAndPermissions") oder einen einzelnen SQL-Befehl ausführen ("select * from Users; exec getTeams; select * from Permissions").

Aber ich habe mich gefragt, ob es eine bessere Möglichkeit gibt, 3 Operationen in einer einzelnen Rundreise durchzuführen. Zu den Vorteilen gehört, dass der Komponententest einfacher ist und das Datenbankmodul die Abfragen parallelisieren kann.

Ich verwende C # 3.5 und SQL Server 2008.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage