Получить схему хранимой процедуры

Я пытаюсь написать основу для создания сущностей из существующей базы данных.

Я уже реализовал весь код для генерации сущностей из таблиц, и он работает хорошо. Сейчас я ищу решение для извлечения всей информации, необходимой для создания объекта хранимой процедуры.

Это код, который я использую, чтобы получить параметры хранимой процедуры

public static List<StoredProcedureParameter> GetStoredProceduresParameters(SqlConnection connection, string storedProcedureName, bool closeConnection = true)
{
   var query = @"select Parameter_Name, Data_Type, CHARACTER_MAXIMUM_LENGTH 
                 from information_schema.parameters
                 where specific_name = @StoredProcedureName";

   var storedProcedures = new List<string>();

   SqlCommand command = new SqlCommand(query, connection);

   command.Parameters.Add(new SqlParameter("StoredProcedureName", storedProcedureName));

   DataTable dataTable = new DataTable();

   using (SqlDataAdapter dataAdapter = new SqlDataAdapter(command))
   {
        dataAdapter.Fill(dataTable);
   }

   if (closeConnection)
   {
      connection.Close();
   }

   return DataTableMapper.ReadDataTableList<StoredProcedureParameter>(dataTable);
}

Теперь мне нужно получить схему набора результатов, но я не могу найти правильный способ выполнить эту задачу. Какие-либо предложения?

ПРИМЕЧАНИЕ: все хранимые процедуры всегда будут возвращать только одну возможную схему, поэтому любая хранимая процедура всегда будет соответствовать ровно одному объекту.

2 ответа

Привет SimoneL: Существуют фреймворки для этого, NHibernate или EF (Entity Framework) от Microsoft, они не отвечают всем вашим потребностям?

Начало работы с EF: http://msdn.microsoft.com/en-gb/data/ee712907

Смотрите мой ответ здесь:

Вы не хотите вызывать SP, когда хотите узнать схему, так как это может повлиять на данные.

Другие вопросы по тегам