Nejsem si vědom Enterprise Library, ale s prostým ADO.NET by kód byl podobný následujícímu
//assume an open connection
using(connection)
{
using (DbCommand command = connection.CreateCommand())
{
command.CommantText = "procedure name";
//setup and add parameters.
SqlParameter parameter = command.CreateParameter();
parameter.Name = "param name";
//set the mode - out/inputOutput etc
//set the size
//set value to DBNull.Value
//execute the stored procedure with SchemaOnly parameter
var reader = command.ExecuteReader(CommandBehavior.SchemaOnly);
var table = reader.GetSchemaTable();
}
}
Poté můžete analyzovat DataTable pro podrobné informace o sadě výsledků.
Ve výše uvedeném kódu můžete samozřejmě použít generické typy – DbCommand, DbParameter atd. Můj odhad je, že s Enterprise Library byste museli v podstatě udělat totéž – spustit uloženou proceduru jako normálně, s výjimkou nastavení „SchemaOnly“.