配置文件<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="DEFAULT" connectionString="Integrated Security=SSPI;
Persist Security Info=False;Initial Catalog=BookManager
<!--<add name="DEFAULT" connectionString="
Data Source=localhost;DataBase=BookManager;User ID=sa; password=xbzhanxin"/>-->
</connectionStrings>
</configuration>
读取方法
        IList<ManagerUser> IManagerUserStorage.ListManagerUser(
            QueryManagerUser pQueryManagerUser)
        {
            List<ManagerUser> managerUserList = null;
            SqlConnection conn;
            IDataReader reader;            try
            {
                Verify.ArgumentNotNull
                    (pQueryManagerUser, "pQueryManagerUser");                string str = ConfigurationManager.ConnectionStrings["DEFAULT"].ConnectionString;                conn = new SqlConnection(str);
                     
                conn.Open();                reader = ManagerUserSelectWrapper.ExecuteReader(
                    conn,
                    pQueryManagerUser);                if (reader != null)
                {
                    managerUserList = new List<ManagerUser>();                    while (reader.Read())
                    {
                        ManagerUser myManagerUser = DAUtil.ReadManagerUser(
                            reader);                        managerUserList.Add(myManagerUser);
                    }                }                conn.Close();
            }
            catch (Exception ex)
            {
                ExceptionHandler.DealWithException(ex);
            }            return managerUserList;
        }用上边的方式读取的时候  会有异常:未将对象引用设置到对象的实例。经过断点调试  发现走到  string str = ConfigurationManager.ConnectionStrings["DEFAULT"].ConnectionString; 这里直接进去异常处理   请教各位是为什么但是用下边的方法可以读取并连接数据库   请问这个为什么 要怎么样才能读取到conn = new SqlConnection("Integrated Security=SSPI;Persist Security Info=False;"
                + "Initial Catalog=BookManager;Data Source= .");

解决方案 »

  1.   

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <connectionStrings>
        <add name="tt" connectionString="aa"/>
      </connectionStrings>
    </configuration>
    MessageBox.Show(System.Configuration.ConfigurationManager.ConnectionStrings["tt"].ConnectionString);
    我写成这样就可以读到,你把不需要的都删除掉呗。
      

  2.   

    配置文件
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <appSettings>
    <add key="connectionstring" value="server=192.168.1.41\sqlexpress;database=HxFutures;uid=sa;pwd=123" />
    <add key="TemplatePATH" value="Template" />
    </appSettings> 
    </configuration>    读取
         string connectionString = ConfigurationManager.AppSettings["connectionstring"];
    你试下看可以不
      

  3.   


    还是不行  是NULL 值  
      

  4.   

    首先你要知道数据库有两种验证机制,一个叫本地集成验证,一个叫远程用户验证。
    <add name="strConDB" connectionString="Server=(172.18.13.22);UID=sa;Pwd=ednns;Database=STBS"/>
      远程用户验证。
    <add name="strConn1" connectionString="Server=(local);Database=MRUSDB;Integrated Security=true"/>   本地集成验证。
      

  5.   

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <add key ="constr" value="Persist Security Info=False;User ID=stop;Initial Catalog=DBJHWJ;Data Source=172.28.4.243;password=iloveyouchicony87665858"/>
    </appSettings>
    </configuration>
    SqlConnection conn = null;
    string constr = ConfigurationSettings.AppSettings["constr"].ToString();
      

  6.   

    你把ASP.NET生成的临时文件全部删除一次,再试一次,或者把机器重新启动一下。有可能是ASP.NET临时文件贮留的问题。