一个ASP.net代码(连接串为server=机器名;database=tk;uid=sa;pwd=123456",
new SqlConnection()过后.open()),这段代码,我原来放在一台2003服务器上,运行很正常,后来服务器坏了,新换了一台服务器,也是2003,SQLSERVER标准版,结果代码一运行到.open()就挂了,报“NullReferenceException: 未将对象引用设置到对象的实例”,另外奇怪的是,将这个程序换到同服务器一个局域网的别的机器,上运行(也是连的服务器上的数据库)就能连接并打开,就在服务器本身运行不行。
   请问这可能是什么问题,是少组件吗?与SqlConnection有关吗?服务器情况说明:win2003,SQLSERVER标准版,SQL使用混合验证,防火墙是开着的,安有卡巴,安有VS2003,aspnet_regii /-i过。

解决方案 »

  1.   

    补充:对了!我在企业管理器中能用sa,登录进SQLSERVER。
      

  2.   

    结果代码一运行到.open()就挂了,报“NullReferenceException:------------------------------------
    没遇到过,想不通为什么会丢 NullRef关防火墙,打SP4看看
      

  3.   

    呵呵,你看看你的防火墙,还有你SQL的用户
    我这有技术文章
    http://blog.leanrun.cn
    可能有你的答案..
      

  4.   

    不是的,是你的连接字符串问题就算conn.open 错误也不会报Null异常
      

  5.   

    搂主打开SQL SERVER 网络实用工具看看,应该不难明白吧
    :)
      

  6.   

    server=.
    和服务器的防火墙有关吧
      

  7.   

    你把机器名换成IP试下
    另外 看你TCP/IP属性里面的--高级--里面的WINS选项卡下的启用NETBIOS..勾选没另外不行 你试下  连接串改成:server=IP,1433;database=tk;uid=sa;pwd=123456",
    在IP后面加一个",1433"