Le Format de la chaîne d'initialisation n'est pas conforme aux spécifications à partir de l'index 0

j'ai un ASP.Net MVC application qui fonctionne très bien sur ma machine de développement local. Mais lorsqu'il est déployé sur IIS7, il produit l'erreur suivante en essayant de se connecter:

Format de la chaîne d'initialisation n'est pas conforme à la spécification début de l'indice 0

La plupart des gens qui affichent cette erreur la résolvent en changeant leur chaîne de connexion d'une façon ou d'une autre. Cependant, ma chaîne de connexion sur l'application locale et déployée est la même. Le chaîne de connexion est comme ceci:

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

Quelle est la cause de cette erreur dans mon cas?

17
demandé sur Stephen Muecke 2011-03-07 15:21:59

8 réponses

Format de la chaîne d'initialisation n'est pas conforme à la spécification début de l'indice 0

Web.config :

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

en aspx.page cs le code doit être écrit dans le format suivant :

SqlConnection con = new
SqlConnection(ConfigurationManager.ConnectionStrings["TestDataConnectionString"].ToString());
16
répondu Guru 2015-02-20 04:43:27

l'outil de déploiement Web a créé une ligne incorrecte Dans la configuration lorsque j'ai coché la case à cocher Activer les Migrations CodeFirst.

12
répondu Der_Meister 2014-03-22 11:30:01

assurez-vous que les informations d'identification sont correctes pour la chaîne de connexion dans le Web.config. Le mien manquait le mot de passe pour le compte avec les permissions à la base de données.

1
répondu H. West 2012-10-11 11:36:36

j'ai rencontré la même erreur. Dans mon cas, c'était la transformation de configuration qui ne fonctionnait pas correctement. Il y a un problème avec les transformations de configuration quand il s'agit de chaînes de connexion. Certains de référence:

on peut aussi écrire le code dans l'aspx.cs page

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

Pour ceux qui voudraient en savoir plus sur Dapper.

Espérons que cette aide.

1
répondu Shriroop 2017-05-23 10:29:37

dans mon cas j'ai accidentellement écrit "password:" au lieu de" password= " dans ma chaîne de conn

1
répondu Zoran P. 2015-10-28 19:08:23

si vous avez utilisé L'Assistant de publication de Visual Studio pour le déploiement et que vous avez coché le Exécuter Du Code Des Premières Migrations cochez la case Paramètres, une nouvelle connexion est automatiquement ajoutée au serveur Web.fichier de configuration, similaire à la 2ème ligne ci-dessous:

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

tout d'abord, notez que la chaîne de connexion ajoutée contient "ConnetionString": je pense qu'elle devrait être "ConnectionString"! Mais ce n'est pas la solution.

Pour éviter le "Format de l' la chaîne d'initialisation n'est pas conforme à la spécification à partir de l'erreur index 0", faites ce qui suit dans L'Assistant de publication:

  1. Dans le Paramètres, sélectionnez Configuration: Release
  2. Dans le Paramètres,n'oubliez pas de coller votre Chaîne de Connexion dans le " Chaîne De Connexion À Distance" le champ
  3. Dans le Paramètres, cochez Exécuter Du Code Des Premières Migrations

en faisant ce qui précède, la chaîne de connexion ajoutée au Le Serveur Web.config lit:

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

et le "Format de la chaîne d'initialisation n'est pas conforme à la spécification de départ à l'indice 0" erreur ne se produit plus.

1
répondu MidnightCoder 2017-01-10 17:29:19

je possède le même problème, lorsque j'utilise la commande: " Mise À Jour-Base De Données