public DataSet GetProjects(int iAppKey, int iCategoryKey, int iStatusKey) { DataSet oDataSet = null; SqlParameter p1 = new SqlParameter("@AppKey", iAppKey); SqlParameter p2 = new SqlParameter("@CategoryKey", iCategoryKey); SqlParameter p3 = new SqlParameter("@StatusKey", iStatusKey); SqlParameter[] ParamArray = new SqlParameter[]{p1, p2, p3}; oDataSet = oDataAccess.ExecuteQueryProc("bm_GetProjects", ParamArray); return oDataSet; }Then the SqlDataAccess class's ExecuteQueryProc method:
public DataSet ExecuteQueryProc(string sParameterName, SqlParameter[] ParamArray) { DataSet oDataSet = new DataSet(); SqlConnection oConn = GetConnection(true); if (oConn != null) { SqlCommand oCommand = new SqlCommand(); oCommand.Connection = oConn; oCommand.CommandText = sParameterName; oCommand.CommandType = CommandType.StoredProcedure; oCommand.Parameters.AddRange(ParamArray); SqlDataAdapter oAdapter = new SqlDataAdapter(); oAdapter.SelectCommand = oCommand; oAdapter.Fill(oDataSet); } return oDataSet; }Although there is alot less code, which I like, I'm still not getting any data. The parameter value are ok.
>>// SQLDataAccess. ExecuteQueryProc >>public DataSet ExecuteQueryProc(ProcedureParams oParams) >>{ >>DataSet oDataSet = new DataSet(); >> >>SqlConnection oConn = GetConnection(true); >> >>if (oConn != null) >>{ >> SqlCommand oCommand = new SqlCommand(oParams.sProcedureName, oConn); >> oCommand.CommandType = CommandType.StoredProcedure; >> >> foreach (Param oColParam in oParams.Params) >> { >> SqlParameter oParam = new SqlParameter(); >> >> oParam.DbType = DbType.Int32; >> oParam.Direction = ParameterDirection.Input; >> oParam.ParameterName = oColParam.sParameterName; >> oParam.SourceColumn = oColParam.sSrcColName; >> oParam.SqlDbType = SqlDbType.Int; >> oParam.Value = oColParam.Value; >> >> oCommand.Parameters.Add(oParam); >> >> oParam = null; >> } >> >> SqlDataAdapter oAdapter = new SqlDataAdapter(); >> oAdapter.SelectCommand = oCommand; >> oAdapter.Fill(oDataSet); >> >> return oDataSet; >>} >>return oDataSet; >>>>