Ejecute múltiples comandos SQL en un solo viaje de ida y vuelta

Estoy creando una aplicación y quiero agrupar múltiples consultas en un solo viaje de ida y vuelta a la base de datos. Por ejemplo, supongamos que una sola página necesita mostrar una lista de usuarios, una lista de grupos y una lista de permisos.

Así que he almacenado procs (o simplemente simples comandos sql como "select * from Users"), y quiero ejecutar tres de ellos. Sin embargo, para completar esta página, tengo que hacer 3 viajes de ida y vuelta.

Ahora podría escribir un solo proceso almacenado ("getUsersTeamsAndPermissions") o ejecutar un solo comando SQL "select * from Users; exec getTeams; select * from Permissions".

Pero me preguntaba si había una mejor manera de especificar 3 operaciones en un solo viaje de ida y vuelta. Los beneficios incluyen ser más fácil de realizar pruebas unitarias y permitir que el motor de la base de datos paralice las consultas en paralelo.

Estoy usando C # 3.5 y SQL Server 2008.

Respuestas a la pregunta(6)

Su respuesta a la pregunta