数据库连接时老是提示"未将对象引用设置到对象的实例。"请问下是什么原因啊?

Tulipfly 2008-07-29 11:27:25
抱错是这样的:
未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

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

源错误:


行 28: string strCommand = "select top 1 Country from users order by userid desc";
行 29: SqlCommand command = new SqlCommand(strCommand,connection);
行 30: connection.Open();
行 31: if(command.ExecuteScalar() != System.DBNull.Value || command.ExecuteScalar().ToString() != string.Empty)
行 32: {


源文件: c:\inetpub\wwwroot\webapplication1\webform1.aspx.cs 行: 30

...全文
2205 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
CalvinR 2012-03-06
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 zzz2800 的回复:]

cmd.CommandText = "select * from users where uid = @id";
cmd.Parameters.Add(new SqlParameter("@id", SqlDbType.VarChar, 50));
cmd.Parameters["@id"].Value = Session["uid"].To……
[/Quote]
一个参数值存入到Session中
EnForGrass 2012-03-06
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 zzz2800 的回复:]

cmd.CommandText = "select * from users where uid = @id";
cmd.Parameters.Add(new SqlParameter("@id", SqlDbType.VarChar, 50));
cmd.Parameters["@id"].Value = Session["uid"].To……
[/Quote]
估计是session引起的,session丢失了,所以值为空
彗星 2012-03-06
  • 打赏
  • 举报
回复
楼主,你应该学会如何去调试,然后添加监视下页面中的值,如果想要快速的找到问题的话,一要思考,二要看经验,首先你要思考为什么会报这个错误,先定下位,大概是什么地方错误,而且你的代码都没try...catch,写代码要规范下不然找错误都要找半天。
奔跑的老王 2012-03-06
  • 打赏
  • 举报
回复
看你的Session["uid"].ToString(),是否有值呗,错误你都找到了,就去改正呗。不知道楼主给Session["uid"]赋值了没有的?
netstudy0105 2012-03-06
  • 打赏
  • 举报
回复
去webconfig里面看看你的["ConnectionString"].对不
zzz2800 2012-03-05
  • 打赏
  • 举报
回复
cmd.CommandText = "select * from users where uid = @id";
cmd.Parameters.Add(new SqlParameter("@id", SqlDbType.VarChar, 50));
cmd.Parameters["@id"].Value = Session["uid"].ToString(); conn.Open();
说是未将对象引用设置到对象的实例,出错的就红色的字体部分,是怎么回事啊?求各位高手帮忙!!!!!!!!
yangpeiyu 2008-07-29
  • 打赏
  • 举报
回复
试试打个SP4补丁
yangpeiyu 2008-07-29
  • 打赏
  • 举报
回复
你连接字符串没有错的话。
那问题就是在你的服务器的SQL SERVER 2000的问题啦。打个补丁下去。
Tulipfly 2008-07-29
  • 打赏
  • 举报
回复
字符串啊,什么的都是好的,因为我之前的就可以用的.
Tulipfly 2008-07-29
  • 打赏
  • 举报
回复
这个之前一直就是好的,突然就连接不上了,有次我重启一下就好了,可现在却一直不行了...有可能不是程序的问题,如果是其他的问题的话,大家也可以告诉我一下啊..
dengchenlu 2008-07-29
  • 打赏
  • 举报
回复
你connection的实例化在哪
确信你的连接字符串有效
Tulipfly 2008-07-29
  • 打赏
  • 举报
回复
代码是这样的:
// 在此处放置用户代码以初始化页面
string strBackValue = string.Empty;
string strConnection = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString();
SqlConnection connection = new SqlConnection(strConnection);
string strCommand = "select top 1 Country from users order by userid desc";
SqlCommand command = new SqlCommand(strCommand,connection);
connection.Open();
if(command.ExecuteScalar() != System.DBNull.Value || command.ExecuteScalar().ToString() != string.Empty)
{
strBackValue = command.ExecuteScalar().ToString();
}
connection.Close();

很奇怪的问题啊,从来都没遇到过,哪位大哥帮忙解决一下啊,非常感谢.
hongqi162 2008-07-29
  • 打赏
  • 举报
回复
怎么又发了一个贴呢?把你28行以前的代码也都贴上来,问题出在你得connection上了
qizhenggang 2008-07-29
  • 打赏
  • 举报
回复
实类化失败。
connection对象生成失败,就是因为你的数据库连接又问题。
快乐的毛毛虫 2008-07-29
  • 打赏
  • 举报
回复
数据库没连接对。
wu345654 2008-07-29
  • 打赏
  • 举报
回复

string strConnection = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString();

我估計你這段話是讀取web.config文件中的connection的,你的數據庫連接配置應該在web.config文件里,檢查一下是否正確。
saiusky21 2008-07-29
  • 打赏
  • 举报
回复
用断点走 一般都是空值造成的 看看ConnectionString是什么
BuleMiniCoper 2008-07-29
  • 打赏
  • 举报
回复
没有正确获取连接字符串信息
导致字符串为空!!
查看连接字符串的引用是否正确
pinhailinfeng 2008-07-29
  • 打赏
  • 举报
回复
确认你的连接字符串没问题,数据库服务起的也没问题,这个问题就不该出现。
myzhangjia 2008-07-29
  • 打赏
  • 举报
回复
SqlConnection connection =System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"].ToString();
加载更多回复(6)

62,241

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧