0

詳細を取得するためにストアドプロシージャを使用しています。

そのストアド プロシージャでは、4 つのパラメータが定義されています。

バル層

Sqlparameter[] param=new SqlParameter[4];
param[0]=new Sqlparameter("@one",Uname);
param[3]=new SqlParameter("@three",Pass);

ds=dal.getdetails("spname",param);
return ds;

DAL レイヤー

public DataSet getdetails(string spname,SqlParameter[] param);
{
      //  here when i retrive the parameter sent by the BAL Layer,
      //I retreive in this  format
      param={"@one",null,null,"@three"}
       //   it throw me error...
       // what code i have to write here...
 }

selectステートメントで必要なパラメーターのみを使用するにはどうすればよいですか...

私の挿入クエリと選択クエリは同じストアド プロシージャにあります。

4

1 に答える 1

3

すべてのパラメーターを渡す必要があります。

値が null の場合、パラメータに db.null 値を渡しますDBNull.Value;

Sqlparameter[] param=new SqlParameter[4];
param[0]=new Sqlparameter("@zero",Uname);
param[1]=new Sqlparameter("@one",DBNull.Value);
param[2]=new Sqlparameter("@two",DBNull.Value);
param[3]=new SqlParameter("@three",Pass);

ds=dal.getdetails("spname",param);
return ds;
于 2013-10-19T05:13:17.250 に答える