Ich kann keine Sql Server-Verbindung zu einem lokalen Computer herstellen, um auf einem Computer zu arbeiten, auf dem SqlServer Express nicht installiert ist

Ich habe eine C# Konsolenanwendung geschrieben, die mit Visual Studio 2012. In der Anwendung bin ich mit einem Sql-Server localdb-Verbindung zu einer Datenbank, um Informationen zu speichern. Dies funktioniert einwandfrei auf mehreren Computern, die alle Visual Studio installiert.

Ich würde gerne bereitstellen eines Programms, das nur zum installieren von Sql Server Express LocalDB und nicht die größeren Sql-Server-Express. Jedoch, meine Bewerbung wird nicht auf den Zielcomputern ausgeführt. Ich habe die installierten Sql Server Express LocalDB 2014 auf einen target-computer. Ich kann mit der Kommandozeile Befehle ausführen, mithilfe von sqllocaldb um sicherzustellen, dass es installiert ist und läuft.

C:\Users\someuser\Desktop\Debug>sqllocaldb v
Microsoft SQL Server 2014 (12.0.2000.8)`

Wenn ich meine Anwendung auf das gleiche Ziel-computer, jedoch bekomme ich die folgende Fehlermeldung.

C:\Users\someuser\Desktop\Debug>Testing_Console

11:21:07,912 [1] INFO TestingConsole.Programm - Aktuelles Verzeichnis ist C:\Users\someuser\Desktop\Debug

Extra Info: (null)

Unbehandelte Ausnahme: System.Daten.SqlClient.SqlException: Ein Netzwerk-oder instanzspezifischen Fehler beim herstellen einer Verbindung zu SQL Server. Der server wurde nicht gefunden oder ist nicht zugänglich. Stellen Sie sicher, dass der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (Anbieter: SQL Network Interfaces, Fehler: 50 - Lokale Datenbank-Runtime-Fehler aufgetreten. Kann nicht erstellen Sie eine automatische Instanz. Finden Sie in der Windows-Anwendungsereignisprotokoll für die Fehler-details.

Folgende ist der Anfang meiner app.config-Datei, wo ich bin, definieren Sie den connection-string. Ich habe versucht, indem in der direkten Datei-Pfad in das LM-file, aber das hat nicht das Problem zu beheben. Das war zu erwarten, aber wie funktioniert das Programm von einem beliebigen Verzeichnis auf dem Computer mit Visual Studio installiert.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  </configSections>
  <connectionStrings>
    <add name="KomoLM_Console.Properties.Settings.LMConnectionString"
      providerName="System.Data.SqlClient"
      connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\LM.mdf;Integrated Security=True;MultipleActiveResultSets=True"
 />
  </connectionStrings>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>

Ich weiß nicht, ob das Problem bezieht sich nur auf SQL Server Express LocalDB 2014 installiert. Kann mir jemand sagen, was mein problem sein könnte?

Kommentar zu dem Problem
Das problem wurde im Zusammenhang mit Sql Server Express LocalDB 2014 installiert. Mit dieser version von MS hat sich die Verbindungszeichenfolge Anforderungen. Statt "Data Source=(LocalDB)\V11.0", the connection string "Data Source=(LocalDB)\MSSQLLocalDB". Nach dem ändern der Verbindungszeichenfolge, das Programm läuft einwandfrei auf einem computer, die nur die LocalDB 2014 installiert. Hier ist ein link zu einem Artikel darüber: link Kommentarautor: MDig
LocalDB ist NUR dazu da, für die Entwicklung in Visual Studio. Es ist normal, dass es funktioniert nicht auf Computern ohne VS. Für die Produktion verwenden Sie nur die SQL Server Express Edition. Kommentarautor: Endrju

InformationsquelleAutor der Frage MDig | 2015-01-07

Schreibe einen Kommentar