小编Joh*_*ohn的帖子

从sql调用过程

我正在编写winform应用程序,我在我的数据网格中调用过程.我有定义过程参数的方法

 public int Add_Nastavenie(out int typNastav, int nastavID, string hod)
    {
        ResetParameters();
        cmd.CommandText = "add_Nastav";
        cmd.CommandType = CommandType.StoredProcedure;

        SqlParameter sqlParameter;

        var sqlParameterOut = new SqlParameter("@TypNastav", SqlDbType.Int);
        sqlParameterOut.Direction = ParameterDirection.Output;


        sqlParameter = new SqlParameter("@NastavenieID", SqlDbType.Int);
        sqlParameter.Direction = ParameterDirection.Input;
        sqlParameter.Value = nastavID;
        cmd.Parameters.Add(sqlParameter);

        sqlParameter = new SqlParameter("@Hodnota", SqlDbType.NVarChar, 100);
        sqlParameter.Direction = ParameterDirection.Input;
        sqlParameter.Value = hod;
        cmd.Parameters.Add(sqlParameter);

        var sqlParameterRet = new SqlParameter("retValue", SqlDbType.Int);
        sqlParameterRet.Direction = ParameterDirection.ReturnValue;

        cmd.ExecuteNonQuery();
        typNastav = (int)sqlParameterOut.Value;
        return (int)cmd.Parameters["retvalue"].Value;

    }
Run Code Online (Sandbox Code Playgroud)

然后我用这种方式调用程序

 dataConnector.Add_Nastavenie(typNastav,nastavID,hod);
Run Code Online (Sandbox Code Playgroud)

我有一个错误参数1必须与'out'关键字一起传递

我将其更改为dataConnector.Add_Nastavenie(输出typNastav,nastavID,hod);

错误消失但应用程序不起作用,程序什么也不做.

我的try catch异常显示:过程或函数'add_Nastav'需要参数'@TypNastav',这是未提供的.

有人可以帮忙找到解决方案吗?谢谢 .

.net c# sql stored-procedures winforms

3
推荐指数
1
解决办法
839
查看次数

标签 统计

.net ×1

c# ×1

sql ×1

stored-procedures ×1

winforms ×1