2

最近,我制作了一个带有数据库的简单网站(在 App_Data 文件夹中)。我使用以下方法创建了一个类文件(在 App_Code 文件夹中),该方法将创建与数据库的连接:

public static SqlConnection ConnectToDb(string dbFileName)
{
    string path = HttpContext.Current.Server.MapPath("App_Data/");
    path += dbFileName;
    string connString =  @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + 
                         path + 
                         ";Integrated Security=True;User Instance=True";
    SqlConnection conn = new SqlConnection(connString);
    return conn;

}

当我需要打开该连接时,我收到以下消息:

建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:SQL 网络接口,错误:26 - 错误定位服务器/指定的实例)

我不明白的是,我在一年前在 Visual Studio 2010 中构建的另一个网站中使用了 -same- 方法,它运行良好。

我检查了路径,它是正确的,与参数中的数据库文件名相同。

代码或 VS 的设置有什么问题?提前致谢。

编辑:刚刚尝试使用(localDB)\v11.0而不是,.\SQLEXPRESS 现在我收到此错误消息:

连接到 SQL Server 的用户实例时,不允许使用用户实例登录标志。

4

1 回答 1

2

您收到该错误是因为(localDB)\v11.0它已经是 SQL Server 的用户实例。当您使用SQLEXPRESSSQL Server 实例时,事实并非如此。因此,只需摆脱User Instance=true连接字符串上的 。

于 2013-09-04T17:03:43.487 回答