Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL Server存储过程等待参数_Sql Server_Asp.net Mvc_Dapper - Fatal编程技术网

Sql server SQL Server存储过程等待参数

Sql server SQL Server存储过程等待参数,sql-server,asp.net-mvc,dapper,Sql Server,Asp.net Mvc,Dapper,我有一个SQL Server存储过程: exec GetBob @id=3 但当我在函数中调用此存储过程时,会出现以下错误: 过程或函数需要@id参数 但是@id是正确的参数get值 public List<Bob> GetBob(int id) { try { connection(); con.Open(); DynamicParameters param = new DynamicParameters();

我有一个SQL Server存储过程:

exec GetBob @id=3
但当我在函数中调用此存储过程时,会出现以下错误:

过程或函数需要@id参数

但是@id是正确的参数get值

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;
    }
}

试试这个。你应该很好。您需要提供它是存储过程的命令类型


试试这个。你应该很好。您需要提供它是存储过程的命令类型


Express parametr@id未指定的参数。未指定的My TranslateXpress Parameterr@id参数。我的translateSide注释:这里不需要动态参数;只需使用新的{id}作为参数即可。附加说明:.AsList的效率略高于.ToList;附加说明:您是否知道您实际上不需要为dapper打开连接,特别是在这种情况下?另一个侧记:不要只是为了扔而抓——甚至不要尝试——如果你想让它发生的话,就让它发生吧。注:这里不需要动态参数;只需使用新的{id}作为参数即可。附加说明:.AsList的效率略高于.ToList;附加说明:您是否知道您实际上不需要为dapper打开连接,特别是在这种情况下?小巧玲珑会处理好的。附加说明:不要只是为了扔而接球——甚至不要尝试——如果你要这样做的话,就让它发生吧
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;
    }
}