服務(wù)熱線
153 8323 9821
System.NullReferenceException 未將對(duì)象引用設(shè)置到對(duì)象的實(shí)例
很多時(shí)候在我們運(yùn)行程序時(shí),會(huì)出現(xiàn)“未將對(duì)象引用設(shè)置到對(duì)象的實(shí)例”這樣的提示信息,就我個(gè)人遇到的情況而言,主要是在代碼中重復(fù)定義了造成的,只要將其中一個(gè)刪除就可以了?,F(xiàn)將從網(wǎng)上收集的各種解決方法匯總?cè)缦拢?/p>
第一種:重復(fù)定義造成未將對(duì)象引用設(shè)置到對(duì)象的實(shí)例錯(cuò)誤
一般在C#中造成“未將對(duì)象引用設(shè)置到對(duì)象的實(shí)例”錯(cuò)誤都是控件名稱與codebehind里面的沒有對(duì)應(yīng),對(duì)于初學(xué)編程的人,而在編碼中重復(fù)定義也會(huì)造成這種問題的產(chǎn)生。
第二種:空對(duì)象引用導(dǎo)致錯(cuò)誤
1??丶淮嬖凇?可加入判斷是否為null來解決)
2。執(zhí)行權(quán)限不夠。加ASPNET和EVETRYONE所有權(quán)限。
1、ViewState 對(duì)象為Unll。
2、DateSet 空。
3、sql語句或Datebase的原因?qū)е翫ataReader空。
4、聲明字符串變量時(shí)未賦空值就應(yīng)用變量。
5、未用new初始化對(duì)象。
6、Session對(duì)象為空。
本人是在登錄后臺(tái)時(shí)出此錯(cuò)誤,癥狀是:在本地沒有問題,傳到服務(wù)器上就出此問題,后來在web.config 中吧debug=true,此時(shí)提示驗(yàn)證碼判斷處出錯(cuò)誤,后來經(jīng)過測(cè)試,得知是驗(yàn)證碼的session為null了,當(dāng)然不會(huì)與輸入的驗(yàn)證碼相等了,所以出現(xiàn)錯(cuò)誤