2016-05-20 4 views
1

Umgebung: .NET Framework 4.6, VS 2015, Entity Framework 6.xDer Netzwerkpfad wurde nicht gefunden. Anbieter: Named Pipes Provider, Fehler: 40 - Konnte eine Verbindung zu SQL Server nicht öffnen

Ich versuche, eine Verbindung zu einem Remote-Server, aber ich bin immer diese Fehlermeldung, wenn ich von Entity Framework versuchen, eine Verbindung zu:

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"}

ich in der Lage war, auf den gleichen Server aus dem SQL Server Management Studio zu verbinden.

Irgendein Zeiger bitte.

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")) 
    { 
    } 
    ... 
} 

common.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(); 
} 

web.config:

<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" /> 

Antwort

5

Sie haben einen Fehler in Ihrer Verbindungszeichenfolge in Ihrer Konfigurationsdatei.

Dies:

Data Source=System.Data.SqlClient 

... ist nicht korrekt.

Data Source=SERVER_HOST_NAME_OR_IP\SQL_SERVER_INSTANCE_NAME 

paar Beispiele:

Data Source=HP-14\SQLEXPRESS 
Data Source=.\SQLEXPRESS 
Data Source=192.168.0.19\INSTANCE14 
Es sollte so etwas wie
0

Der Server muss so konfiguriert werden, dass er mehrere Verbindungen vom selben Login aus behandelt. oder Sie müssen Ihre Verbindungen so verwalten, dass Sie immer nur eine Verbindung zu jeder Zeit haben

Verwandte Themen