在敲機房充值記錄查詢的過程中,當我呼叫工廠方法,例項化乙個dal層資料庫類返回乙個充值記錄查詢的介面,當執行這個介面的方法的過程中出現了如下的錯誤:未將物件引用設定到物件的例項
出現問題原因:
工廠層:例項化了sqlservercharge_querydal類的乙個物件,返回idal.iselectdal介面
'充值記錄查詢
public shared function charge_query() as iselectdal
dim daluserinfoname as string = assemblyname & "." & strdb & "charge_querydal"
return ctype(assembly.load(assemblyname).createinstance(daluserinfoname), idal.iselectdal)
end function
但是在dal層,我把充值記錄查詢的方法寫在了selectdal類裡.
'學生充值記錄查詢
public function charge_query(byval cardinfo as jfentity.cardinfo) as datatable implements iselectdal.charge_query
'傳參賦值
sqlparams =
sql = "select cardno as 卡號,addmoney as 充值金額,date as 充值日期,time as 充值時間,userid as 充值教師 from recharge_info where cardno= @cardno"
table = sqlhelper.execselect(sql, commandtype.text, sqlparams)
return table
end function
所以導致當我在b層寫icharge_query = jffactory.charge_query例項化乙個類的物件,但是charge_query方法卻在類selectdal裡,所以就會出現
沒有例項化出來方法所對應的物件錯誤。
解決辦法:
把工廠中把例項化sqlservercharge_querydal的過程改為例項化selectdal.如下:
'充值記錄查詢
public shared function charge_query() as iselectdal
dim daluserinfoname as string = assemblyname & "." & "selectdal"
return ctype(assembly.load(assemblyname).createinstance(daluserinfoname), idal.iselectdal)
end function
未將物件引用設定到物件的例項
今天又遇到了未處理nullreferenceexception未將物件引用設定到物件的例項的錯誤.在google上搜了一下,有以下原因可造成該錯誤的發生.1 viewstate 物件為null。2 dateset 空。3 sql語句或datebase的原因導致datareader空。4 宣告字串變數...
未將物件引用設定到物件的例項
一 網路上的一般說法 1 viewstate 物件為null。2 dateset 空。3 sql語句或datebase的原因導致datareader空。4 宣告字串變數時未賦空值就應用變數。5 未用new初始化物件。6 session物件為空。7 對控制項賦文字值時,值不存在。8 使用request...
未將物件引用設定到物件的例項
物件引用沒有設定到物件例項的原因很多 1 如下 public intrevise refint numline,refint numcircle,refint numtext,system.io.streamwriter str w,list string record,extextend,line...