我写了一个web程序 我运行应用程序 没毛病 可以正常使用 但是我拿到 IIS 上后 刚开始能用 但是用着用着 就报我 config 文件 有错误 错误是我的数据库连接  我 在config里面配置的数据库config  文件 <connectionStrings>
<add name="connString" connectionString="Data Source=.;User ID=sa;Password=123;Initial Catalog=AXin_OA"/>
</connectionStrings>
报的错 

未将对象引用设置到对象的实例。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。源错误: 
行 16:             get 
行 17:             {
行 18:                 string connectionString = ConfigurationManager.ConnectionStrings["connString"].ConnectionString;
行 19:                 if (connection == null)
行 20:                 {
 源文件: C:\Documents and Settings\sudeli\桌面\AXin_OA2\AXin_OA\DAL\DBHelper.cs    行: 18 堆栈跟踪: 
[NullReferenceException: 未将对象引用设置到对象的实例。]
   DAL.DBHelper.get_Connection() in C:\Documents and Settings\sudeli\桌面\AXin_OA2\AXin_OA\DAL\DBHelper.cs:18
   DAL.DBHelper.GetDataSet(String safeSql) in C:\Documents and Settings\sudeli\桌面\AXin_OA2\AXin_OA\DAL\DBHelper.cs:91
   DAL.UserInfoService.GetUserInfoByUserNum(String userNum) in C:\Documents and Settings\sudeli\桌面\AXin_OA2\AXin_OA\DAL\UserInfoService.cs:161
   BLL.UserInfoManager.Login(String userNum, String Password, UserInfo& validUser) in C:\Documents and Settings\sudeli\桌面\AXin_OA2\AXin_OA\BLL\UserInfoManager.cs:102
   _Login.btnLogin_Click(Object sender, EventArgs e) +90
   System.Web.UI.HtmlControls.HtmlInputButton.OnServerClick(EventArgs e) +104
   System.Web.UI.HtmlControls.HtmlInputButton.RaisePostBackEvent(String eventArgument) +106
   System.Web.UI.HtmlControls.HtmlInputButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5612 

解决方案 »

  1.   


    有 初始化using System;
    using System.Collections;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    using System.Configuration;namespace DAL
    {
        public static class DBHelper
        {
            private static SqlConnection connection;
            public static SqlConnection Connection
            {
                get 
                {
                    string connectionString = ConfigurationManager.ConnectionStrings["connString"].ConnectionString;
                    if (connection == null)
                    {
                        connection = new SqlConnection(connectionString);
                        connection.Open();
                    }
                    else if (connection.State == System.Data.ConnectionState.Closed)
                    {
                        connection.Open();
                    }
                    else if (connection.State == System.Data.ConnectionState.Broken)
                    {
                        connection.Close();
                        connection.Open();
                    }
                    return connection;
                }
            }
    }
      

  2.   

    试试重写 datasource ,写成 本机名\SQLExpress
      

  3.   

    权限问题吧,C:\WINDOWS\temp 右击属性-》安全->network service->全部勾选
      

  4.   

    貌似ConfigurationManager.ConnectionStrings["connString"]为null
    检查下配置文件设置的是否有问题 文件位置是不是放错了或读的别处的文件 如果当前目录非根目录且有配置文件 它读当前的
      

  5.   

    连接语句是null值,建议楼主在那个位置设一个断点,查看变量的值~~如果是NULL就说明是config问题了~~设断点调试吧