我有一个SQL Server存储过程:
exec GetBob @id=3
但是当我在函数中调用此存储过程时,我收到错误:
过程或函数需要@id参数
但是@id
是正确的参数(获取值)。
public List<Bob> GetBob(int id)
{
try
{
connection();
con.Open();
DynamicParameters param = new DynamicParameters();
param.Add("@id", id);
IList<Bob> EmpList = SqlMapper.Query<Bob>(con, "GetBob", param).ToList();
con.Close();
return EmpList.ToList();
}
catch (Exception)
{
throw;
}
}
答案 0 :(得分:5)
试试这个。你应该好。您需要提供command Type
Stored Procedure
。{/ p>
public List<Bob> GetBob(int id)
{
try
{
connection();
con.Open();
DynamicParameters param = new DynamicParameters();
param.Add("@id", id);
IList<Bob> EmpList = SqlMapper.Query<Bob>(
con, "GetBob",param,commandType: CommandType.StoredProcedure).ToList();
con.Close();
return EmpList.ToList();
}
catch (Exception)
{
throw;
}
}