SQL Server存储过程等待参数

tri*_*t23 1 sql-server asp.net-mvc dapper

我有一个SQL Server存储过程:

exec GetBob @id=3
Run Code Online (Sandbox Code Playgroud)

但是当我在函数中调用此存储过程时,我收到错误:

过程或函数需要@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;
    }
}
Run Code Online (Sandbox Code Playgroud)

小智 5

试试这个.你应该好.你需要提供command TypeStored Procedure.

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;
    }
}
Run Code Online (Sandbox Code Playgroud)