wake-up-neo.com

Das Format der Initialisierungszeichenfolge entspricht nicht der Spezifikation ab Index

Ich habe eine ASP.Net MVC-Anwendung, die auf meinem lokalen Entwicklungscomputer einwandfrei läuft. Bei der Bereitstellung auf IIS7 wird beim Anmelden der folgende Fehler angezeigt:

Das Format der Initialisierungszeichenfolge entspricht nicht der Spezifikation ab Index 0 beginnen

Die meisten Benutzer, die diesen Fehler veröffentlichen, beheben diesen Fehler, indem sie ihre Verbindungszeichenfolge ändern. Meine Verbindungszeichenfolge in der lokalen und der bereitgestellten Anwendung ist jedoch gleich. Die Verbindungszeichenfolge lautet wie folgt:

<add name="ApplicationServices" connectionString="Data Source=*server*\*instance*;Initial Catalog=*database*;Integrated Security=True;"
      providerName="System.Data.SqlClient" />

Was verursacht diesen Fehler in meinem Fall?

17
Banford

Das Format der Initialisierungszeichenfolge entspricht nicht der Spezifikation ab Index 0 beginnen

Web.config:

<connectionStrings>
    <add name="TestDataConnectionString" connectionString="Data Source=.\SQLExpress;Initial Catalog=TestData;User ID=satest;Password=satest"
     />
  </connectionStrings>

In der aspx.cs-Seite muss der Code im folgenden Format geschrieben werden:

SqlConnection con = new
SqlConnection(ConfigurationManager.ConnectionStrings["TestDataConnectionString"].ToString());
16
Guru

Das Web-Bereitstellungstool hat eine falsche Zeile in der Konfiguration erstellt, als ich das Kontrollkästchen CodeFirst-Migrationen aktivieren markierte.

12
Der_Meister

In meinem Fall habe ich versehentlich "password:" anstelle von "password =" in meine Verbindungszeichenfolge geschrieben

1
Zoran P.

Ich bin auf den gleichen Fehler gestoßen. In meinem Fall funktionierte die Konfigurationsumwandlung nicht ordnungsgemäß .. Es gibt ein Problem mit der Konfigurationsumwandlung, wenn es um Verbindungszeichenfolgen geht. Einige Referenz:

Man kann den Code auch in die aspx.cs-Seite schreiben

using (IDbConnection dbConnection =
       new SqlConnection(ConfigurationManager.ConnectionStrings["db"].ConnectionString))
       {
           // TODO: Write SQL Stored Procedures or SQL Statements using Dapper
       }

Für diejenigen, die mehr über Dapper erfahren möchten.

Hoffe das hilft.

1
Shriroop

Wenn Sie Visual Studio Publish Wizard für die Bereitstellung verwendet und das Kontrollkästchen Code-Erstmigrationen ausführen in den Einstellungen aktiviert haben, wird dem automatisch ein neuer ConnectionString hinzugefügt Server Web.config-Datei, ähnlich der 2. Zeile unten:

<add name="LCWeb3Context" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;Initial Catalog=LCWeb3;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\LCWeb3.mdf" providerName="System.Data.SqlClient" />
<add name="LCWeb3Context_DatabasePublish" connectionString="LCWeb3Context_DatabasePublish.ConnetionString" providerName="System.Data.SqlClient" />

Beachten Sie zunächst, dass die hinzugefügte Verbindungszeichenfolge "ConnetionString" enthält: Ich denke, es sollte "ConnectionString" sein! Aber das ist nicht die Lösung.

Führen Sie im Veröffentlichungsassistenten die folgenden Schritte aus, um zu vermeiden, dass das Format der Initialisierungszeichenfolge nicht der Spezifikation ab Index 0 entspricht:

  1. Wählen Sie in den Einstellungen Konfiguration: Freigabe
  2. Vergessen Sie nicht, im Feld Einstellungen Ihre Verbindungszeichenfolge in das Feld " Zeichenfolge für Remoteverbindung" einzufügen
  3. Aktivieren Sie in den Einstellungen Code First Migrations ausführen

In diesem Fall lautet die der Datei Server Web.config hinzugefügte Verbindungszeichenfolge:

<add name="LCWeb3Context_DatabasePublish" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\LCWeb3.mdf;Initial Catalog=LCWeb3;Integrated Security=True" providerName="System.Data.SqlClient" />

und der Fehler "Format der Initialisierungszeichenfolge entspricht nicht der Spezifikation ab Index 0" tritt nicht mehr auf.

1
MidnightCoder

Stellen Sie sicher, dass die Anmeldeinformationen für die Verbindungszeichenfolge in Web.config korrekt sind. Mir fehlte das Kennwort für das Konto mit Berechtigungen für die Datenbank.

1
H. West

Ich habe das gleiche Problem, wenn ich in der Package Manager Console den Befehl "Update-Database" verwende.

Stellen Sie sicher, dass startup project auf das Projekt gesetzt ist, das Sie aktualisieren möchten.

Z.B. Ich habe Db-Projekt und Web-Projekt erhalten. Stellen Sie sicher, dass startup project für Db-Projekt festgelegt ist, wenn Sie "Update-Database" ausführen. Andernfalls wird versucht, innerhalb eines Web-Projekts zu suchen.

0
Box Very