mdf文件的ASP.NET connectionString不起作用

时间:2019-08-27 15:28:16

标签: c# asp.net

我正在使用Visual Studio2017。我刚刚在项目中创建了一个全新的mdf文件(右键单击“应用程序数据”->“添加新项”->“ SQL Server数据库”),然后将文件命名为TestDatabase.mdf < / p>

现在我正尝试通过连接字符串连接到它:

<add name="TestConnection" connectionString="Server=.\SQLExpress;AttachDbFilename=|DataDirectory|TestDatabase.mdf;Database=TestDatabase; Trusted_Connection=Yes;" providerName="System.Data.SqlClient" />

接下来,我创建了一个模型,然后创建了一个EntityFramework控制器,但是现在当我转到控制器索引方法时,会出现此错误:

  

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

我在做什么错了?

2 个答案:

答案 0 :(得分:0)

确保您可以在App_Data文件夹中找到testDatabase.mdf。

<connectionStrings>
  <add name="ConnectionName"
    connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|DatabaseName.mdf;Integrated Security=True;User Instance=True"
    providerName="System.Data.SqlClient" />
</connectionStrings>

答案 1 :(得分:0)

您输入的此连接字符串不正确。

<add name="TestConnection" connectionString="Server=.\SQLExpress;AttachDbFilename=|DataDirectory|TestDatabase.mdf;Database=TestDatabase; Trusted_Connection=Yes;" providerName="System.Data.SqlClient" />

我假设您的系统中已安装SQL Express。这将提供要在您的计算机上运行的SQL的本地实例。

正如您所说的使用Visual Studio 2017,可以按照以下步骤获取正确的连接字符串

  1. 打开服务器资源管理器
  2. 右键单击您的数据库,然后单击属性
  3. 将打开一个属性窗口,复制ConnectionString并确保它看起来像这样:

    <add name="YourDbName" connectionString="Data Source=YourComputerName\SQLEXPRESS;Initial Catalog=YourDbName;Integrated Security=True" />

现在谈论这个:

  

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

您收到此错误,因为它没有获取实例名称以连接到数据库。在我的示例中,SQLEXPRESS用作实例名称。如果您没有SQLEXPRESS,则可以从此处下载: https://www.microsoft.com/en-in/sql-server/sql-server-editions-express 您可以按照提示在系统中安装此软件包。

安装此组件后,您的实例将被激活。再次连接您的Db。我确定它可以正常工作。

如果再次出现此错误,您可以按照以下步骤操作:

  1. 打Windows + R,然后键入 services.msc ,然后单击“确定”
  2. 从给定列表中搜索<​​strong> SqlServer(SQLEXPRESS),然后单击启动服务。这将再次激活您的实例,您的数据库现在可以连接到您的应用程序了。

希望这会有所帮助。

相关问题