当我尝试
时var con = new SqlConnection(
ConfigurationManager
.ConnectionStrings["RegConnectionString"]
.ConnectionString);
我收到以下错误:
错误消息 - 空引用异常 对象引用未设置为对象的实例
出了什么问题?
答案 0 :(得分:3)
检查错误拼写或缺少配置设置。
在此行代码中发生此错误的时间为99.99999%,问题是Web.Config(或app.config)中的SqlConnecton设置丢失或拼写错误。
(实际上,根据我的经验,这是100%的时间,但你永远不会知道。在一切事物附近都有例外。)
来自here:
.NET 3.5(及更高版本)配置文件中的连接字符串
请勿在web.config中使用appsettings。而是使用 web.config中的connectionStrings部分。
<connectionStrings>
<add name="myConnectionString" connectionString="server=localhost;database=myDb;uid=myUser;password=myPass;" />
</connectionStrings>
使用ConfigurationSettings类。 string connStr =
ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
所以你的web.config应该包含
<add name="RegConnectionString" connectionString="server=localhost;database=myDb;uid=myUser;password=myPass;" />
当然,您需要替换服务器名称,数据库名称,用户名,密码等...
答案 1 :(得分:3)
的Web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<!-- snip -->
<connectionStrings>
<add name="RegConnectionString"
connectionString="Put your connex string here drrr" />
</connectionStrings>
答案 2 :(得分:2)
您可能缺少web.config中的RegConnectionString
连接字符串。
这是一个例子。有关详细信息,请参阅MSDN。
<configuration>
<!-- Other configuration settings -->
<connectionStrings>
<add name="RegConnectionString"
providerName="System.Data.SqlClient"
connectionString="server=.;database=NorthWind;Integrated Security=SSPI" />
</connectionStrings>
<!-- Other configuration settings -->
</configuration>