我有这个方法来执行存储过程
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类,或者另一种方法是使其适应您的需求。
看看这个教程,它使用了这样一个类。