Ich habe eine ASP.Net-Anwendung, die auf meinem lokalen Entwicklungscomputer einwandfrei ausgeführt wird.
Wenn ich diese Anwendung online ausführe, wird der folgende Fehler angezeigt
Das Format der Initialisierungszeichenfolge entspricht nicht der Spezifikation ab Index 0
c#
asp.net
sql-server-2008
GS Bhangal
quelle
quelle
Antworten:
Überprüfen Sie Ihre Verbindungszeichenfolge. Wenn Sie Hilfe benötigen, überprüfen Sie die Verbindungszeichenfolgen , die eine Liste häufig verwendeter Zeichenfolgen enthalten .
Häufig verwendete Verbindungszeichenfolgen:
SQL Server 2012
Standardsicherheit
Vertrauenswürdige Verbindung
Verbindung zu einer SQL Server-Instanz
Die in der Serveroption verwendete Server- / Instanznamensyntax ist für alle SQL Server-Verbindungszeichenfolgen gleich.
SQL Server 2005
Standardsicherheit
Vertrauenswürdige Verbindung
Verbindung zu einer SQL Server-Instanz
Die in der Serveroption verwendete Server- / Instanznamensyntax ist für alle SQL Server-Verbindungszeichenfolgen gleich.
MySQL
Standard
Angabe des TCP-Ports
Orakel
TNS verwenden
Integrierte Sicherheit nutzen
Verwenden von ODP.NET ohne tnsnames.ora
quelle
Dies könnte jemandem helfen. Mein Passwort enthielt ein Semikolon und war daher mit diesem Problem konfrontiert. Daher wurde das Passwort in Anführungszeichen gesetzt. Es war wirklich ein dummer Fehler.
Ich habe folgendes geändert:
zu
quelle
Legen Sie das Projekt mit Ihrer
DbContext
Klasse als Startprojekt fest.Ich habe diesen Fehler beim Anrufen erhalten
enable-migrations
. Selbst wennPackage Manager Console
ich rechts ausgewählt habeDefault project
, wurde immer noch die Datei web.config des Startprojekts angezeigt, in der die Verbindungszeichenfolge nicht vorhanden war.quelle
Stellen Sie sicher, dass Ihre Verbindungszeichenfolge dieses Format hat:
Wenn in Ihrer Zeichenfolge das
server
Tag fehlt, kehrt die Methode mit diesem Fehler zurück.quelle
Ich hatte das gleiche Problem. Lokal lief die Site einwandfrei, aber unter Azure schlug sie mit der obigen Meldung fehl.
Es stellte sich heraus, dass das Problem darin bestand, den Verbindungsstring im CTOR wie folgt einzustellen:
Funktioniert NICHT, dies wird:
Schlägt mich..
quelle
Überprüfen Sie Ihre Verbindungszeichenfolge, wie ich vergessen habe, sie hinzuzufügen
services.AddDbContext<dbsContext>(options => options.UseSqlServer("Default"));
Es verursacht den Fehler und hier, wenn ich hinzufüge
Configuration.GetConnectionString
, dann löst es das Problemwie jetzt ist die Verbindung:
funktioniert gut (Dieses Problem ist für .net Core gelöst)
quelle
Durch Verweisen auf den vollständigen SP-Pfad wurde dieses Problem für mich behoben:
quelle
Ich habe dieses Problem gelöst, indem ich die Verbindungszeichenfolge in den Veröffentlichungseinstellungen meiner ASP.NET-Web-API geändert habe.
Überprüfen Sie meine Antwort auf diesen Beitrag: So beheben Sie Fehler :: Das Format der Initialisierungszeichenfolge entspricht nicht der Spezifikation ab Index 0 ::
quelle
Ich hatte den gleichen Fehler. In meinem Fall lag dies daran, dass mir ein abschließendes Anführungszeichen für das Kennwort in der Verbindungszeichenfolge fehlte.
Daraus geändert
Zu
quelle
Dies passiert auch, wenn Sie eine Webseite von einer Lösung in eine andere kopieren, dann Ihre Lösung ausführen und feststellen, dass sie in der Webkonfiguration einen anderen Namen für die Verbindungszeichenfolge hat. Anschließend ändern Sie unachtsam den Namen der Verbindungszeichenfolge im Eigenschaftenfenster in der Entwurfsansicht der Seite.
Es ist besser, es einfach im Codeteil anstatt im Design zu ändern.
quelle
Mein Problem war, dass ich meinem Konstruktor Datenbankprotokollierungscode für ein DB-Objekt hinzugefügt habe, und dies schien mein Azure-Bereitstellungsprofil zu zerstören.
Zu Ihrer Information - Ich habe dieses Beispiel vereinfacht. Im realen Code wurde dies in der Produktion deaktiviert (aber immer noch im Code).
quelle
Ich hatte Tippfehler in meinen Verbindungszeichenfolgen "Database == PESitecore1_master"
quelle
Ich hatte das gleiche Problem und konnte es schließlich folgendermaßen lösen:
Das Problem lag in der Definition der Verbindungszeichenfolge in meiner web.config.
Das Obige funktionierte lokal perfekt, da ich beim Verwalten von Benutzern und Rollen eine lokale Datenbank verwendet habe. Als ich meine Anwendung auf IIS übertragen habe, war der Zugriff auf die lokale Datenbank nicht mehr möglich. Außerdem möchte ich meine Datenbank in SQL Server verwenden. Daher ändere ich die obige Verbindungszeichenfolge in das folgende SQL Server DB-Äquivalent:
ANMERKUNG: Angenommen, Sie verwenden denselben SQL Server aus Ihrer lokalen Box (falls Sie ihn in Ihre lokale web.config integrieren - genau das habe ich in meinem Fall getan).
quelle
Ich hatte das gleiche Problem und stellte fest, dass bei der Bereitstellung auf IIS die Verbindungszeichenfolgen nicht richtig festgelegt wurden. Sie waren '$ (ReplacableToken_devConnection-Web.config Connection String_0)', wenn die Verbindungszeichenfolgen der Site in IIS anstelle der tatsächlichen Verbindungszeichenfolge angezeigt wurden. Ich habe sie dort aktualisiert und alle haben wie erwartet funktioniert
quelle
Ich habe meine Verbindungszeichenfolgenkonfiguration kopiert und in mein Testprojekt eingefügt und bin auf diesen Fehler gestoßen. Die Verbindungszeichenfolge hat in meinem WebAPI-Projekt einwandfrei funktioniert. Hier ist mein Fix.
quelle
Ich habe & quot am Ende der Verbindungszeichenfolge entfernt und es hat funktioniert
Anstatt
Gebraucht
Stellen Sie DefaultConnection wie folgt ein
quelle
Mein Problem war nicht, dass die von mir bereitgestellte Verbindungszeichenfolge falsch war oder dass die Verbindungszeichenfolge in der app.config, die ich verwendete, falsch war, sondern dass ich die falsche app.config verwendete.
quelle
Manchmal wurde der SQL Server-Dienst nicht gestartet. Dies kann den Fehler erzeugen. Gehen Sie zu Dienste und starten Sie SQL Server. Dies sollte funktionieren.
quelle
Für die eine andere unglückliche Seele, die eine ältere Webforms-Anwendung verwaltet, die eine Inline-sqldatasource zusammen mit in web.config gespeicherten Verbindungszeichenfolgen verwendet, kann dieser Fehler auftreten, wenn Sie auf Ihre Verbindungszeichenfolge wie <% APSDataConnectionString%> anstelle von <zugreifen % $ ConnectionStrings: MyConnectionString%>. Dies ist uns beim Upgrade von .NET von 3.5 auf 4.x passiert.
quelle
In meinem Fall bestand das Problem darin, dass auf dem Server eine andere Datei appsettings.json von der Anwendung verwendet wurde.
quelle
In meinem Fall habe ich einen ähnlichen Fehler erhalten:
Eine nicht behandelte Ausnahme wurde von der Anwendung ausgelöst. System.ArgumentException: Das Format der Initialisierungszeichenfolge entspricht nicht der Spezifikation ab Index 91.
Ich ändere meine Verbindungszeichenfolge von:
Server =.; Datenbank = Datenbankname; Benutzer-ID = myuserid; Passwort = mypassword "
zu:
Server =.; Datenbank = Datenbankname; Benutzer-ID = myuserid; Passwort = 'meinpasswort' "
und es funktioniert, ich habe dem Passwort einfache Anführungszeichen hinzugefügt.
quelle
Ich hatte auch diesen Fehler und konnte ihn wie folgt beheben: Ich habe zuvor den Verbindungsstring in die Datei appsettings.json in einen von mir erstellten Abschnitt geschrieben (ConnectionsStrings (beachten Sie die zusätzlichen "s") und versucht, eine Verbindung zu meiner Datenbank herzustellen, die das verursacht hat Fehler. Es war eine ASP.NET CORE-Anwendung und daher wollte ich eine Verbindung mit der .GetConnectionString-Methode herstellen (Details dazu hier ). Es scheint, dass diese Methode implizit nach einer Verbindungszeichenfolge im Abschnitt "ConnectionStrings" sucht, was nicht der Fall war existiert nicht. Als ich es in "ConnectionStrings" geändert / korrigiert habe, hat es wie erwartet funktioniert.
quelle
Wie ich weiß, kann es vorkommen, dass Sie mit diesem Fehler konfrontiert werden, wenn Ihre Lösung mehr als eine Verbindungszeichenfolge enthält (Ihr aktuelles Projekt, Startprojekt, ...)
Dieser Link kann Ihnen beim Klicken helfen
quelle