Asp.net 4 连接字符串问题

Asp.net 4 connection string issue

我遇到以下错误

 public int  GetRegisteredUsersCount()
    {

        string myScalarQuery = "select count(*) from aspnet_Users where isActivated = 0";
        string cs = ConfigurationManager.ConnectionStrings["uniteCms"].ConnectionString;
        SqlConnection myConnection = new SqlConnection(cs.ToString());

        SqlCommand myCommand = new SqlCommand(myScalarQuery, myConnection);
        myCommand.Connection.Open();
        int count = (int) myCommand.ExecuteScalar();
        myConnection.Close();

        return count;
    }

但是我的 webconfig 连接字符串部分中有连接字符串

 <add
name="uniteCms"
connectionString="Data Source=myserver;Initial 
Catalog=DB_9DF962_davidbuckleyni37;User ID=DB_9DF962_davidbuckleyni37_admin;Password="
providerName="System.Data.SqlClient"
/>

您使用的是什么数据源实例? 如果您使用的是 sqlexpress,那么您应该输入 Data source=myserver\sqlexpress。对于任何实例,它应该像 Data Source=ServerName\InstanceName

您的连接字符串中似乎有换行符,这也是错误所暗示的(即 Initial\r\nCatalog)。

确保不要在属性值中放置任何换行符。

<add
  name="uniteCms"
  connectionString="Data Source=myserver;Initial Catalog=DB_9DF962_davidbuckleyni37;User ID=DB_9DF962_davidbuckleyni37_admin;Password="
  providerName="System.Data.SqlClient" />

如果你真的想分解它,你可以尝试在连接字符串中的分隔符之后添加它,但我不确定它是否会被允许在那里。

这可能行得通,可能会因崩溃而失败,或者可能会失败但什么也没说,然后给你一个关于未授权的例外(因为只使用了第一行)。

<add
  name="uniteCms"
  connectionString="Data Source=myserver;
                    Initial Catalog=DB_9DF962_davidbuckleyni37;
                    User ID=DB_9DF962_davidbuckleyni37_admin;
                    Password="
  providerName="System.Data.SqlClient" />