高手请教:System.NullReferenceException: 未将对象引用设置到对象的实例。

本文介绍了一个ASP.NET应用程序中出现的NullReferenceException异常及其上下文代码。异常发生在尝试使用未初始化的对象实例时。文章包含了出现问题的.aspx页面代码及后台类库代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

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

源错误:



行 5:   protected void pl(Object sender,EventArgs e){
行 6:   Readnews rn = new Readnews();
行 7:   DataSet ds = new Readnews().getdata();
行 8:   datag.DataSource = ds;
行 9:   datag.DataBind();
.aspx页代码
None.gif<%@ page language="C#" debug="true"%>
None.gif
<%@ Import namespace="System.Data"%>
None.gif
<%@ Import namespace="djf"%>
None.gif
<Script runat="server">
ExpandedBlockStart.gifContractedBlock.gif 
protected void pl(Object sender,EventArgs e)dot.gif{
InBlock.gif Readnews rn 
= new Readnews();
InBlock.gif DataSet ds 
= new Readnews().getdata();
InBlock.gif datag.DataSource 
= ds;
InBlock.gif datag.DataBind(); 
ExpandedBlockEnd.gif}

ExpandedBlockStart.gifContractedBlock.gif 
protected override void OnInit(EventArgs e)dot.gif{
InBlock.gif  
this.Load += new EventHandler(pl);
ExpandedBlockEnd.gif}

None.gif
</script>
None.gif
<html><head><title>数据类</title></head>
None.gif
<body>
None.gif
<form runat="server">
None.gif 
<asp:datagrid runat="server" id="datag" />
None.gif
</form>
None.gif
</body>
None.gif
</html>
下面是后台编码,已经编译成库文件并放在/bin子目录中
None.gifusing System;
None.gif
using System.Configuration;
None.gif
using System.Data;
None.gif
using System.Data.OleDb;
None.gif
using System.Web;
None.gif
using System.Web.UI;
ExpandedBlockStart.gifContractedBlock.gif
namespace djf dot.gif{
ExpandedSubBlockStart.gifContractedSubBlock.gif  
public class Readnews dot.gif{
InBlock.gif  
public OleDbConnection cn;
InBlock.gif  
public OleDbCommand cmd; 
ExpandedSubBlockStart.gifContractedSubBlock.gif  
public DataSet getdata() dot.gif{
InBlock.gif   cn.ConnectionString 
= ConfigurationSettings.AppSettings["connstr"];
InBlock.gif   cmd.Connection 
= cn;
InBlock.gif   cmd.CommandText 
= "select * from news";
ExpandedSubBlockStart.gifContractedSubBlock.gif   
try dot.gif{
InBlock.gif   cn.Open();
InBlock.gif   IDbDataAdapter dad 
= new OleDbDataAdapter(cmd);
InBlock.gif   DataSet ds 
= new DataSet();
InBlock.gif   dad.Fill(ds);
InBlock.gif   
return ds;
ExpandedSubBlockEnd.gif       }

ExpandedSubBlockStart.gifContractedSubBlock.gif   
catch dot.gif{   
InBlock.gif      
return null;
ExpandedSubBlockEnd.gif         }

ExpandedSubBlockStart.gifContractedSubBlock.gif   
finally dot.gif{
InBlock.gif      cn.Close();
InBlock.gif      cn.Dispose(); 
ExpandedSubBlockEnd.gif           }

ExpandedSubBlockEnd.gif    }

ExpandedSubBlockEnd.gif  }

ExpandedBlockEnd.gif}

转载于:https://www.cnblogs.com/daijunfeng1983/archive/2006/01/01/309371.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值