求助,很奇怪的问题,各位帮忙看看

tangyong12 2007-05-19 11:32:13
这两天碰到一个奇怪的问题,就是我在实例化一个sqlconnection对象之后,然后open的时候在VS调试环境下执行有时出现对象没有实例化,有时候又可以,好像没有规律性。
但是直接执行bin/debug/或bin/release、目录下的执行文件时却老提示对象没有实例化。不知道大家有没有碰到过这种情况,相关源代码如下:
string connstr = "packet size=4096;user id=sa;data source=192.168.123.58;persist security info=False;initial catalog=dthhis";
// string connstr = "packet size=4096;Data Source="+databaseIP+";"+"user id="+databaseAccount+";"+"password="+databsePassword+";"+"Initial Catalog=dthhis;persist security info=False;Connect Timeout=30;";
// string connstr = "Server=" + databaseIP + ";Database=dthhis;User ID=" + databaseAccount + ";Password=" + databsePassword + ";Trusted_Connection=False;Packet Size=4096;";
connection = new SqlConnection(connstr);
connection.Open();//执行到这里的时候有时候会提示对象没有实例化
...全文
385 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
dragonlus 2007-05-19
  • 打赏
  • 举报
回复
看看
tangyong12 2007-05-19
  • 打赏
  • 举报
回复
我现在只是在这个地方连接一下数据库,没有提交任何事件,也没有进行任何刷新,就是这么几句简单的代码都出现这种问题。
周公 2007-05-19
  • 打赏
  • 举报
回复
string connstr = "Server=" + databaseIP + ";Database=dthhis;User ID=" + databaseAccount + ";Password=" + databsePassword + ";Trusted_Connection=False;Packet Size=4096;";

SqlConnection connection=new SqlConnection(connstr);
connection.Open();

这段代码是没有问题的,但是一旦发生了向服务器提交事件(刷新也是),connection就会变成null的。
tangyong12 2007-05-19
  • 打赏
  • 举报
回复
出错的时候跟踪断点的情况:
- connection {System.Data.SqlClient.SqlConnection} System.Data.SqlClient.SqlConnection
+ System.ComponentModel.Component {System.Data.SqlClient.SqlConnection} System.ComponentModel.Component
- _constr {System.Data.SqlClient.SqlConnectionString} System.Data.SqlClient.SqlConnectionString
+ System.Data.Common.DBConnectionString {System.Data.SqlClient.SqlConnectionString} System.Data.Common.DBConnectionString
_applicationName ".Net SqlClient Data Provider" string
_attachDBFileName "" string
_connectionLifeTime 0 int
_connectionReset true bool
_connectTimeout 15 int
_currentLanguage "" string
_dataSource "192.168.123.58" string
_encrypt false bool
_enlist true bool
_initialCatalog "dthhis" string
_integratedSecurity false bool
_maxPoolSize 100 int
_minPoolSize 0 int
_netlibMapping <未定义的值> System.Collections.Hashtable
_networkLibrary "" string
_packetSize 4096 int
_password "" string
- _permission {System.Data.SqlClient.SqlClientPermission} System.Data.SqlClient.SqlClientPermission
+ System.Data.Common.DBDataPermission {System.Data.SqlClient.SqlClientPermission} System.Data.Common.DBDataPermission
_persistSecurityInfo false bool
_pooling true bool
+ _sqlClientParseCache {Count=1} System.Collections.Hashtable
+ _sqlClientSynonyms {Count=39} System.Collections.Hashtable
_userID "sa" string
_workstation_ID "TANGY" string
_workstationId "TANGY" string
ApplicationName ".Net SqlClient Data Provider" string
AttachDBFilename "" string
ConnectionLifeTime 0 int
ConnectionReset true bool
ConnectTimeout 15 int
CurrentLanguage "" string
DataSource "192.168.123.58" string
- Default {System.Data.SqlClient.SqlConnectionString} System.Data.SqlClient.SqlConnectionString
- System.Data.Common.DBConnectionString {System.Data.SqlClient.SqlConnectionString} System.Data.Common.DBConnectionString
System.Object {System.Data.SqlClient.SqlConnectionString} System.Object
_behavior AllowOnly System.Data.KeyRestrictionBehavior
_displayString null string
_encryptedActualConnectionString null string
_encryptedUsersConnectionString null string
_hasPassword false bool
_keychain <未定义的值> System.Data.Common.NameValuePair
+ _parsetable {Count=0} System.Collections.Hashtable
_restrictions null string
_restrictionValues <未定义的值> string[]
Behavior AllowOnly System.Data.KeyRestrictionBehavior
EncryptedActualConnectionString null string
+ invariantComparer {System.InvariantComparer} System.Collections.IComparer
Item <无法查看索引属性> string
KeyChain <未定义的值> System.Data.Common.NameValuePair
Restrictions "" string
UdlPoolSize 0 int
_applicationName ".Net SqlClient Data Provider" string
_attachDBFileName "" string
_connectionLifeTime 0 int
_connectionReset true bool
_connectTimeout 15 int
_currentLanguage "" string
_dataSource "" string
_encrypt false bool
_enlist true bool
_initialCatalog "" string
_integratedSecurity false bool
_maxPoolSize 100 int
_minPoolSize 0 int
_netlibMapping <未定义的值> System.Collections.Hashtable
_networkLibrary "" string
_packetSize 8192 int
_password "" string
+ _permission {System.Data.SqlClient.SqlClientPermission} System.Data.SqlClient.SqlClientPermission
_persistSecurityInfo false bool
_pooling true bool
+ _sqlClientParseCache {Count=1} System.Collections.Hashtable
+ _sqlClientSynonyms {Count=39} System.Collections.Hashtable
_userID "" string
_workstation_ID "TANGY" string
_workstationId null string
ApplicationName ".Net SqlClient Data Provider" string
AttachDBFilename "" string
ConnectionLifeTime 0 int
ConnectionReset true bool
ConnectTimeout 15 int
CurrentLanguage "" string
DataSource "" string
+ Default {System.Data.SqlClient.SqlConnectionString} System.Data.SqlClient.SqlConnectionString
Encrypt false bool
Enlist true bool
InitialCatalog "" string
IntegratedSecurity false bool
MaxPoolSize 100 int
MinPoolSize 0 int
NetworkLibrary "" string
PacketSize 8192 int
Password "" string
Pooling true bool
UserID "" string
WorkstationId null string
Encrypt false bool
Enlist true bool
InitialCatalog "dthhis" string
IntegratedSecurity false bool
MaxPoolSize 100 int
MinPoolSize 0 int
NetworkLibrary "" string
PacketSize 4096 int
Password "" string
Pooling true bool
UserID "sa" string
WorkstationId "TANGY" string
_fIsClosing false bool
_hidePasswordPwd false bool
_infoMessageEventHandler <未定义的值> System.Data.SqlClient.SqlInfoMessageEventHandler
_internalConnection <未定义的值> System.Data.SqlClient.SqlInternalConnection
_localTransaction <未定义的值> System.WeakReference
_objectState Closed System.Data.ConnectionState
_preparedCommands <未定义的值> System.Collections.ArrayList
_reader <未定义的值> System.WeakReference
_sdc <未定义的值> System.Data.SqlClient.SqlDebugContext
_SqlClientPermission <未定义的值> System.Data.SqlClient.SqlClientPermission
_stateChangeEventHandler <未定义的值> System.Data.StateChangeEventHandler
ConnectionString "packet size=4096;user id=sa;data source=192.168.123.58;persist security info=False;initial catalog=dthhis" string
ConnectionTimeout 15 int
Database "dthhis" string
DataSource "192.168.123.58" string
IsClosing false bool
IsShiloh <错误: 发生 {System.NullReferenceException} 类型的异常> bool
LocalTransaction <未定义的值> System.Data.SqlClient.SqlTransaction
PacketSize 4096 int
Parser <未定义的值> System.Data.SqlClient.TdsParser
Reader <未定义的值> System.Data.SqlClient.SqlDataReader
ServerVersion <错误: 发生 {System.InvalidOperationException} 类型的异常> string
SqlClientPermission {System.Data.SqlClient.SqlClientPermission} System.Data.SqlClient.SqlClientPermission
State Closed System.Data.ConnectionState
WorkstationId "TANGY" string
yumanqing 2007-05-19
  • 打赏
  • 举报
回复
MARK
tangyong12 2007-05-19
  • 打赏
  • 举报
回复
connection 是一个全局的成员变量
已经try过了,捕获的异常就是未将对象引用设置到对象的事例
懒牛科技 2007-05-19
  • 打赏
  • 举报
回复
connection = new SqlConnection(connstr);
connection.Open();//
connection 没有类型????


TRy
{
SqlConnection connection = new SqlConnection(connstr);
connection.Open();//

}
tangyong12 2007-05-19
  • 打赏
  • 举报
回复
在网上看到有朋友说遇到过这种问题,现在这个问题关键是没有规律性可循,调试时有时候可以有时候不行,不知道是不是开发环境的问题。生成的执行文件每次都提示对象没有实例化。
zhangliu_521 2007-05-19
  • 打赏
  • 举报
回复
我有次更科幻是,安装了firefox就出错..卸载就好了..
tangyong12 2007-05-19
  • 打赏
  • 举报
回复
多谢各位,找到问题了,程序没有问题,这个应该是SqlConnection对象本身的问题,我打上framework sp1之后就没有问题了。估计以前很多朋友遇到的都是这个问题。
zhangliu_521 2007-05-19
  • 打赏
  • 举报
回复
对象没有实例化
connection = new SqlConnection(connstr);

对象就只有connstr 了


string connstr = "packet size=4096;Data Source="+databaseIP+";"+"user id="+databaseAccount+";"+"password="+databsePassword+";"+"Initial Catalog=dthhis;persist security info=False;Connect Timeout=30;";



databaseIP, databaseAccount , databsePassword 问题就出在这3个了..
取不到 这三个的任意一个或者几个,就会出

"对象没有实例化" 这个错
zhj__zhj 2007-05-19
  • 打赏
  • 举报
回复
顶一下,这样的问题我昨天还刚遇到过。有的时候可以有的时候就不可以。估计是开发环境的问题,毕竟是盗版的

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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