0

並未將物件參考設定為物件的執行個體

hoki 7 年前28840 瀏覽

請問何原因造成有此Client 在連Web時會出現“並未將物件參考設定為物件的執行個體”,有的Clietn可正常運作。

該頁面是用C#、ASP.NET、使用Farpoint來撰寫的。

1 個回答

20
jamesjan
iT邦高手 1 級 ‧ 7 年前
最佳解答

System.NullReferenceException
將物件參考設定為物件的執行個體的概念,請參考微軟論壇的回覆
如何將物件參考設定為物件的執行個體???
有的 Client 可以運作,有的不行
我遇過的情況是使用 DataReader 來擷取資料,如果您的 Connection 沒有初始化
或者是透過別的方式建立 Connection 如自訂 Class 中初始化 Connection 然後供程式使用
時會發生

發生的原因有可能是 Connection 已經 Timeout 掉了
或者是在程式的某處將 Connection Release 了,但後面的程式仍然參考該 Connection 所致

至於為什麼有些 Client 可以有些 Client 不行
這是因為 .Net 使用了跟 Java 一樣的 Garbage Collection,雖然讓 Connection=Nothing 但在資源中並未真正 Release 掉
所以有些 Client 還是可以使用到該 Connection,所以會正常(可以下 GC.Collect() 來回收)

以上是個人的經驗與看法,並不代表一定正確

我要發表回答

立即登入回答