У меня есть этот метод для выполнения хранимых процедур
public void EjecutarSP(string sp)
{
try
{
SqlCommand cmd = new SqlCommand(sp, ConexionBD.con);
cmd.CommandType = CommandType.StoredProcedure;
ConexionBD.Conectar();
cmd.ExecuteNonQuery();
ConexionBD.Desconectar();
}
catch (Exception ex)
{
throw new Exception(" Error al ejecutar procedimiento almacenado ", ex);
}
}
Этот метод служит мне в целом, когда хранимые процедуры не получают и не возвращают никакого значения, я хотел знать, есть ли способ сделать их универсальными, когда хранимая процедура получает и возвращает параметры, я думаю, что для возвращаемой части я могу использовать ExecuteReader, который возвращает таблицу, а затем работает с ней в приложении, но для части отправки параметров я не знаю, можно ли сделать что-то общее, поскольку не все хранимые процедуры получают одинаковое количество параметров.
Этот метод поможет вам выполнять хранимые процедуры , используя общие типы данных:
Теперь, чтобы иметь возможность сделать вызов метода, это будет следующим образом:
Отправка в метод
Вы отправляете все нужные параметры, чтобы, наконец, получить их автоматически в том типе класса, который вы хотите, в общем виде.
Если вы хотите, вы можете использовать класс Sql Helper , который уже имеет нужные вам перегруженные методы, или другой вариант — адаптировать его к вашим потребностям.
Посмотрите этот туториал , в котором используется такой класс.