Auf meinem Entwicklercomputer befindet sich eine SQL Server-Instanz mit dem Namen developer_2005 . In den Ressourceneinstellungsdateien einer C # -Anwendung, die wir erstellen, wird der Instanzname auf foobar gesetzt (nicht wirklich, aber nur als Beispiel). Wenn ich die Anwendung ausführe (in Debug oder Realease), versucht sie, eine Verbindung zu einem SQL Server auf localhost mit dem Namen foobar herzustellen .
Ich frage mich, ob es möglich ist, einen Alias oder ähnliches zu erstellen, damit die Anwendung tatsächlich einen SQL Server auf localhost mit dem Namen foobar findet , aber tatsächlich eine Verbindung zu der Instanz mit dem Namen developer_2005 herstellt .
Die Verbindungszeichenfolge in der Konfigurationsdatei der Anwendung lautet Data Source = localhost \ foobar; Initial Catalog = barfoo; Integrated Security = True mit dem Anbieternamen System.Data.SqlClient . Wenn ich localhost \ foobar in localhost \ developer_2005 ändere, kann die Anwendung eine Verbindung herstellen, wie sie sollte. Wie kann ich einen Alias erstellen, damit ich die Zeichenfolge in der Datei nicht ändern muss?
Ich habe in SQL Server Management Studio versucht, eine Serverregistrierung mit dem registrierten Servernamen "localhost \ developer" zu erstellen, aber dies schien nichts zu nützen. Ich bin mir nicht einmal sicher, was das wirklich getan hat ... Aber dann habe ich SQL Server Configuration Manager \ SQL Native Client-Konfiguration \ Aliase entdeckt. Und ich gehe davon aus, dass hier die Lösung liegt. Aber ich kann nicht genau herausfinden, wie ich einen neuen hinzufügen soll ... Wenn ich einen neuen erstelle, muss ich den Aliasnamen, die Portnummer, das Protokoll und den Server angeben, und ich habe nicht wirklich eine Ahnung, was ich eingeben soll jeder von ihnen.
quelle
Sie haben Recht. Sie müssen lediglich einen neuen Alias in der Native Client-Konfiguration definieren.
Versuche dies:
quelle