本人一网站,在Web项目中Web.Config中,如下配置数据库连接字符串
<connectionStrings>
<add name="DatebaseConnection"
connectionString="server=.;database=XXX;uid=XXX;pwd=XXX"/>
</connectionStrings> 再在DAL项目自定义数据库连接类中如下调用:
SqlConnection MyConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["DatabaseConnection"].ConnectionString);
总是报如下错误:未将对象引用设置到对象的实例。 而如果在Web.Config中,如下配置数据库连接字符串
<appSettings>
<add key ="DatabaseConnection" value="server=.;database=XXX;uid=XXX;pwd=XXX"/>
</appSettings> 再在自定义数据库连接类中如下调用:
SqlConnection MyConnection = new SqlConnection(ConfigurationManager.AppSettings["DatabaseConnection"]);则没有错误 报的错误是未将对象引用到对象的实例
<connectionStrings>
<add name="DatebaseConnection"
connectionString="server=.;database=XXX;uid=XXX;pwd=XXX"/>
</connectionStrings> 再在DAL项目自定义数据库连接类中如下调用:
SqlConnection MyConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["DatabaseConnection"].ConnectionString);
总是报如下错误:未将对象引用设置到对象的实例。 而如果在Web.Config中,如下配置数据库连接字符串
<appSettings>
<add key ="DatabaseConnection" value="server=.;database=XXX;uid=XXX;pwd=XXX"/>
</appSettings> 再在自定义数据库连接类中如下调用:
SqlConnection MyConnection = new SqlConnection(ConfigurationManager.AppSettings["DatabaseConnection"]);则没有错误 报的错误是未将对象引用到对象的实例
<add key ="DatabaseConnection" value="server=.;database=XXX;uid=XXX;pwd=XXX"/>
</appSettings> ConfigurationSettings.AppSettings["DatabaseConnection"]
这一句你把ConfigurationManager.ConnectionStrings["DatabaseConnection"].ConnectionString先用一个string类型接收试试
protected static string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
Web.config中这样:
<connectionStrings>
<add name="ConnectionString" connectionString="server=.\sqlexpress;user=用户名;pwd=密码;database=数据库;"/>
</connectionStrings>
<add name="DatabaseConnection" connectionString="Data Source=XX;Initial Catalog=XXX;Persist Security Info=True;User ID=sa;Password=XX" providerName="System.Data.SqlClient"/>
</connectionStrings>
private string ConnectStr = ConfigurationManager.ConnectionStrings["DatabaseConnection"].ConnectionString;2.AppSetting中定义<add key="DatabaseConnection" value="XXXX"/>string Value = System.Configuration.ConfigurationManager.AppSettings["DatabaseConnection"];
错误 1 TestCase 'Test.GuestBookDAlTest.TestAdd' failed: System.NullReferenceException : 未将对象引用设置到对象的实例。
在 Hao.SQLServerDAL.GuestBook.AddGuestBook(GuestBookInfo guestBook) 位置
在即时窗口查看
输入ConfigurationManager.ConnectionStrings[0]
显示
{data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
base {System.Configuration.ConfigurationElement}: {data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
ConnectionString: "data source=.\\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
Name: "LocalSqlServer"
ProviderName: "System.Data.SqlClient"
很明显我加的ConnectionString字符节根本就没有连接到。我不知怎么样才能连接到,高手帮忙解决一下。谢谢。
所以要使用的时候最好是重新加载一下那个configuration
添加引用--添加web引用里面找到system.configuration就行了
不过还是建议你重新引用下
不要直接添加using system.configuration;
按照我刚才说的方法试试
<connectionStrings>
<add name="DatebaseConnection"
connectionString="server=.;database=XXX;uid=XXX;pwd=XXX"/>
</connectionStrings> "DatebaseConnection"里的"Date"应该是"Data"吧?
同意楼上的..你的 名字都不对啊..
add 里面是 DatebaseConnection
DAL项目自定义数据库连接类里面是 DatabaseConnection
换成一样的看看
<add name="LocalSqlServer" connectionString="Data Source=.;Initial Catalog=socanTest;Persist Security Info=True;User ID=sa;Password=1"
providerName="System.Data.SqlClient" />
<add name="HaoCompanyConnectionString" connectionString="Data Source=.;Initial Catalog=HaoCompany;Integrated Security=True"
providerName="System.Data.SqlClient" />
<add name="HaoCompanyConnectionString2" connectionString="Data Source=.;Initial Catalog=HaoCompany;User ID=sa;Password=1"
providerName="System.Data.SqlClient" />
</connectionStrings>我重新加了两个在里面。
然后用ConfigurationManager.ConnectionStrings.Count查看数量 Count=1
查看ConfigurationManager.ConnectionStrings[0]
显示结果:
{data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
base {System.Configuration.ConfigurationElement}: {data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
ConnectionString: "data source=.\\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
Name: "LocalSqlServer"
ProviderName: "System.Data.SqlClient"
我想估计根本就没有连接到web.config这个文件里面的字符节??????
但我不知道为什么会连接不到。
参考
<appSettings>
<add key="DBConnectionString" value="Data Source=.;Initial Catalog=xxx;Persist Security Info=True;User ID=xxx;Password=xxx"/>
</appSettings>
<connectionStrings/>
xxx.cs ConfigurationManager.AppSettings["DBConnectionString"];