2013-08-07 20 views
0

我有過程的definitonsqlParameterCollection錯誤

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; 

} 

我把這個過程是這樣的:

dataConnector.Add_Nastavenie(out typNastav,nastavID,hod); 

這是顯示錯誤:

SQL參數與參數名稱 'retvalue' 被不包含這個 sqlParameterCollection

我該如何解決?

回答

1

你得到這個,因爲你沒有添加返回參數給命令。你錯過了這個

cmd.Parameters.Add(sqlParameterRet); 

cmd.ExecuteNonQuery(); 
相關問題