Вы можете использовать метод SqlCommandBuilder.DeriveParameters для возврата информации о параметрах, связанных с хранимой процедурой. Итерации по коллекции позволят вам определить имя параметра, тип данных, направление и т. Д.
SqlCommand cmd = new SqlCommand();
SqlConnection conn = new SqlConnection("myConnectionString");
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "myStoredProcName";
cmd.Connection = conn;
conn.Open();
SqlCommandBuilder.DeriveParameters(cmd);
conn.Close();
SqlParameterCollection collection = cmd.Parameters;
Посмотрите определения классов SqlParameterCollection и SqlParameter для получения дополнительной информации.