`
sunqing0316
  • 浏览: 41999 次
  • 性别: Icon_minigender_2
文章分类
社区版块
存档分类
最新评论

asp.net经典问题之“未将对象引用设置到对象的实例”

 
阅读更多

相信几乎所有学过asp.net的朋友都遇到过这个问题:未将对象引用设置到对象的实例。这个问题在我刚开始学习这方面的知识的时候真有点让崩溃的感觉,当时都快打击死我了,不过经过了以后,反而有一种明朗的小激动,呵呵,问题是进步的阶梯,此乃真理。下面,就来看一下到底都有哪些原因会造成这个问题的出现(这里有我自己遇到的问题,也有在网上查阅的资料)

一、数据库方面

1、ViewState 对象为Null。

2、DateSet 空。

3、sql语句或Datebase的原因导致DataReader空。

4、声明字符串变量时未赋空值就应用变量。

5、未用new初始化对象。

6、Session对象为空。

7、对控件赋文本值时,值不存在。

8、使用Request.QueryString()时,所获取的对象不存在,或在值为空时未赋初始值。

9、使用FindControl时,控件不存在却没有做预处理。

10、重复定义造成未将对象引用设置到对象的实例错误.

二、应用程序方面

(1)所设置的变量为空值或没有取到值,一般出现在传递参数的时候出现这个问题,也会在使用DataGrid或gridview或datalist等数据控件时出现.

  (2)控件名称与codebehind里面的没有对应

  (3)未用new初始化对象

  (4)在程序中所引用的控件不存在

  解决方法:

  (1)使用try..catch...finally捕捉错误,或直接用response.write()输出所取的变量值

  (2)查看代码中是否存在未初始化的变量

三、数据库连接

SqlConnection.Open 未将对象引用设置到对象的实例

在使用VS2003开发 ASP.NET程序时候 有时候操作 SqlConnection对象的Open()方法时候会出现

未将对象引用设置到对象的实例。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息:System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:

。。。。

conn.Open();

......

跟踪调试也肯定可以确定 对conn进行new 操作 但是程序经常在这个地方报错,但是有时候重启服务器或者重启IIS有能正常使用了。 怎么调试也找不到问题 那么这个时候可能是你本机上安装的.NET FRAMEEWORK 框架有问题,可能没有没有安装SP1.1补丁

需要打NETFRAMEEWORK1.1 SP1的补丁,到微软官方网站下载安装后就好了。

四、一般出现NullReferenceException异常的情况:

1、对象所在的命名空间没有引用

2、对象没有实例化

3、出现异常,实例化失败对象为 null

五、IIS 扛不住的时候,也会出现上面的错误。

当应用程序的用户访问量超过它能承受的范围之后,就会出错。

改善你的程序,使用缓存,尽量减少与数据库交互的次数。

六、查看是否重置了DataSet引用

请大家好好查查自己的代码,是不是在其他地方重新引用了,在DataSet被设置成全局对象也会出现这种错误提示。

七、最后

甚至,仅仅因为网站里面DAL的dll文件失效,业务层实例化不了IDAL里面的对象也会出错。

当你发现所有的方法不行时,打上.netframework的补丁

总结

暂时就这么多了吧,虽然错误的表现形式大致相同,但是其原因却是五花八门,学习就要像中医一样,治标更要治本,学习要知其然还要知其所以然。

分享到:
评论

相关推荐

    未将对象引用设置到对象的实例--可能出现的问题总结

    ### 未将对象引用设置到对象的实例--可能出现的问题总结 在进行软件开发尤其是Web应用程序开发过程中,经常会遇到“未将对象引用设置到对象的实例”这类异常,这种异常通常表现为`System.NullReferenceException`。...

    未将对象引用设置到对象的实例问题原因

    ### 未将对象引用设置到对象的实例问题原因 在.NET开发过程中,特别是使用ASP.NET进行Web应用程序开发时,开发者可能会遇到一个常见的异常——`System.NullReferenceException`。这一异常通常意味着试图访问一个未...

    asp.net运行提示未将对象引用设置到对象的实例错误解决方法

    未将对象引用设置到对象的实例 一、网络上的一般说法 1、ViewState对象为Null。 2、DateSet空。 3、sql语句或Datebase的原因导致DataReader空。 4、声明字符串变量时未赋空值就应用变量。 5、未用new初始化对象。 6...

    asp.net下配置数据源时出现: 未将对象引用设置到对象的实例。

    在ASP.NET开发过程中,我们有时会遇到“未将对象引用设置到对象的实例”的错误,这是一个常见的编程异常,通常发生在尝试访问一个尚未初始化的对象的成员时。本文将深入探讨这个问题,以及一个可能的另类解决方案。 ...

    ASP.NET 分Sheet导出EXCEL 2003 导出引用dll

    本文将深入探讨如何在ASP.NET环境中实现Excel 2003的分Sheet导出,并涉及到关键的DLL引用。 首先,我们要明白,Excel 2003使用的是.BIFF8文件格式,这是微软早期版本的Excel所采用的。在ASP.NET中,我们可以使用第...

    ASP.NET 2.0网络开发技术 ASP.NET 2.0核心对象

    在ASP.NET 2.0中,一切基于对象,核心对象扮演着至关重要的角色,使得开发者能更高效地管理和控制网页的运行流程。 **Page类**是ASP.NET页面的基础,每个ASPX页面都是Page类的实例。Page类提供了大量的属性和方法,...

    ASP.NET经典实例教程+C#基础PDG教程。有很好的参考价值

    这篇教程集合了ASP.NET的经典实例和C#的基础知识,对于初学者和有一定经验的开发者来说,都具有很高的学习和参考价值。 ASP.NET是.NET框架的一部分,主要用于构建动态网页应用。它提供了一种模型驱动的方法来开发...

    ASP.NET调用百度地图API实例

    6. `BaiDuMap.csproj`:这是ASP.NET项目的项目文件,包含了所有项目文件的引用和编译设置。 接下来,我们来看看百度地图API。百度地图API是一组JavaScript库,允许开发者在网页上嵌入地图、获取地理位置、搜索地址...

    ASP.NET NHibernate框架实例

    ASP.NET NHibernate框架实例是一个基于.NET平台的全功能数据库访问框架,它结合了ASP.NET的Web开发能力与NHibernate的ORM(对象关系映射)功能。这个实例项目旨在为初学者提供一个动手实践的平台,以便更好地理解和...

    asp.net 密码加密实例

    在ASP.NET中使用MD5进行密码加密是基本的实践,但考虑到MD5的安全性问题,推荐使用更安全的算法如SHA-256或bcrypt。在实际应用中,结合盐值和多次迭代哈希可以进一步提高安全性。了解并正确实现这些概念对于任何ASP...

    asp.net生成图表实例

    这个实例将带我们深入理解如何使用C#编程语言在ASP.NET环境中创建动态图表。ASP.NET提供了多种方式来实现图表生成,其中最常用的是使用第三方库,如微软的Chart Controls或更现代的Web库如Highcharts或Chart.js。 *...

    ASP.Net Core MVC 使用EF操作MySQL数据库完整实例

    开发者可以通过这个实例学习到如何设置数据库上下文,定义实体模型,以及在控制器中使用EF Core进行CRUD操作。对于想要学习或提升ASP.NET Core和数据库操作技能的人来说,这是一个非常有价值的实践项目。

    未将对象引用设置到对象的实例 (System.NullReferenceException)

    【未将对象引用设置到对象的实例 (System.NullReferenceException)】是.NET开发中常见的运行时错误,这个异常表示尝试访问或操作一个尚未初始化的对象,即该对象的引用是`null`。这个问题无论对于初学者还是有经验的...

    asp.net商场购物车实例

    在这个"商场购物车实例"中,我们将探讨如何利用ASP.NET技术来实现一个基本的在线购物车功能。 购物车是电子商务网站的核心组成部分,它允许用户在决定购买之前临时存储商品。在ASP.NET中,我们可以通过创建一个名为...

    asp .net实现播放视频实例

    ASP.NET可以支持这种方式,通过设置HttpResponse对象的Transfer-Encoding为"chunked"。 5. **安全与权限控制**: - 为了防止未授权的访问,需要设置适当的文件访问权限。ASP.NET提供了一套权限管理系统,可以限制...

    ASP.NET应用开发案例教程

    上篇 ASP.NET应用与开发基础 第1章 ASP.NET概论 1.1 ASP.NET简介 1.1.1 从.NET谈起 1.1.2 动态网站设计技术 1.1.3 ASP.NET的介绍 1.1.4 ASP.NET和ASP的对比 1.2 运行环境配置 1.2.1 ASP...

    ASP.NET中使用AJAX验证的实例

    本实例将探讨如何在ASP.NET中集成AJAX验证,以实现实时、无刷新的用户输入验证。 首先,我们需要理解AJAX验证的基本原理。AJAX验证主要通过JavaScript和XMLHttpRequest对象来实现,它能在用户输入数据时立即发送...

    Dreamweaver+ASP.NET动态网站设计与典型实例

    《Dreamweaver+ASP.NET动态网站设计与典型实例》配书光盘说明 配书光盘 版权所有,侵权必究 2007年10月 一、光盘内容: 1. Readme.txt 光盘说明文件,在使用前请先读光盘的Readme.txt文件。 2.目录内容: ...

Global site tag (gtag.js) - Google Analytics