问题描述
DBClassdbObj=newDBClass();protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){//调用CommonClass类中的GetDataSet获取数据集DataSetds=dbObj.GetDataSet("select*fromtb_Newswhereid='"+Request.QueryString["id"]+"'","tbNews");DataRow[]row=ds.Tables["tbNews"].Select();DBClass.cs中这一部分是这样的publicDataTableGetDataSet(stringstrSql,stringTableName){ds=newDataSet();try{myConn=GetConnection();//与数据库连接adapt=newSqlDataAdapter(strSql,myConn);//实例化SqlDataAdapter类对象adapt.Fill(ds,TableName);//填充数据集returnds.Tables[TableName];//返回数据集DataSet的表的集合}catch(Exceptionex){thrownewException(ex.Message,ex);}finally{//断开连接,释放资源myConn.Close();adapt.Dispose();ds.Dispose();myConn.Dispose();}超级新手,看着书打的~不知道该怎么解决?有没有大神可以帮一下,加一下QQ啊~
解决方案
解决方案二:
这句DataSetds=dbObj.GetDataSet("select*fromtb_Newswhereid='"+Request.QueryString["id"]+"'","tbNews");DataRow[]row=ds.Tables["tbNews"].Select();
改为DataTabledt=dbObj.GetDataSet("select*fromtb_Newswhereid='"+Request.QueryString["id"]+"'","tbNews");DataRow[]row=dt.Select();
或者publicDataTableGetDataSet(stringstrSql,stringTableName){ds=newDataSet();try{myConn=GetConnection();//与数据库连接adapt=newSqlDataAdapter(strSql,myConn);//实例化SqlDataAdapter类对象adapt.Fill(ds,TableName);//填充数据集returnds.Tables[TableName];//返回数据集DataSet的表的集合
改为publicDataSetGetDataSet(stringstrSql,stringTableName){ds=newDataSet();try{myConn=GetConnection();//与数据库连接adapt=newSqlDataAdapter(strSql,myConn);//实例化SqlDataAdapter类对象adapt.Fill(ds,TableName);//填充数据集returnds;//返回数据集DataSet的表的集合
根据你的方法名的话,推荐第二种改法。
解决方案三:
DataSetds=dbObj.GetDataSet("select*fromtb_Newswhereid='"+Request.QueryString["id"]+"'","tbNews");改成DataTableds=dbObj.GetDataSet("select*fromtb_Newswhereid='"+Request.QueryString["id"]+"'","tbNews");
解决方案四:
你的方法返回类型是DataTable的,但是你是用DataSet接收的