gpt4 book ai didi

c# - 找不到网络路径。提供程序 : Named Pipes Provider, 错误:40 - 无法打开与 SQL Server 的连接

转载 作者:太空宇宙 更新时间:2023-11-03 19:52:25 24 4
gpt4 key购买 nike

环境:.NET Framework 4.6、VS 2015、Entity Framework 6.x

我正在尝试连接到远程服务器,但是当我尝试从 Entity Framework 连接时出现此错误:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

InnerException = {"The network path was not found"}

我能够从 SQL Server Management Studio 连接到同一台服务器。

请指点。

MultipleTestModel.Context.cs

 public partial class fccidevEntities : DbContext
{
public fccidevEntities()
: base(hr.common.Database.EntitiesConnectionString("res://*/ef.MultipleTestModel.csdl|res://*/ef.MultipleTestModel.ssdl|res://*/ef.MultipleTestModel.msl"))
{
}
...
}

常见的.Database.EntitiesConnectionString :

public static string EntitiesConnectionString(string model,string)
{
try
{
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(ConfigurationManager.ConnectionStrings["fccidevConnection"].ConnectionString);

builder["MultipleActiveResultSets"] = true;
builder["Connect Timeout"] = 30;

EntityConnectionStringBuilder entityBuilder = new EntityConnectionStringBuilder();
entityBuilder.Provider = "System.Data.SqlClient";
entityBuilder.ProviderConnectionString = builder.ConnectionString;

entityBuilder.Metadata = model;

return entityBuilder.ToString();
}
catch(Exception ex)
{
throw ex;
}
}

DAL:​​

using (var dbTest = new fccidevEntities())
{
var EmployeeInformation = await dbTest.Employees.Where(x => x.Id == 10).FirstOrDefaultAsync();
}

网络配置:

<add name="fccidevConnection" 
connectionString="Data Source=System.Data.SqlClient;Initial Catalog=dev.ca.atech.com;Integrated Security=False;User Id=sa;Password=*****;MultipleActiveResultSets=True"
providerName="System.Data.SqlClient" />

最佳答案

您的配置文件中的连接字符串有误。

这个:

Data Source=System.Data.SqlClient

...不正确。它应该是这样的:

Data Source=SERVER_HOST_NAME_OR_IP\SQL_SERVER_INSTANCE_NAME

几个例子:

Data Source=HP-14\SQLEXPRESS
Data Source=.\SQLEXPRESS
Data Source=192.168.0.19\INSTANCE14

关于c# - 找不到网络路径。提供程序 : Named Pipes Provider, 错误:40 - 无法打开与 SQL Server 的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37357369/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com