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 application qui fonctionne très bien sur ma machine de développement local.

quand j'exécute cette application en ligne, il montre l'erreur suivante

Le Format

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

83
demandé sur ilter 2011-11-23 17:30:48

15 réponses

Vérifiez votre chaîne de connexion. Si vous avez besoin d'aide , cochez la case "Connection Strings ", qui contient une liste des chaînes les plus utilisées.

chaînes de connexion D'usage courant:

SQL Server 2012

Norme De Sécurité

Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;

Connexion De Confiance

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;

connexion à une instance de Serveur SQL

la syntaxe nom de serveur/instance utilisée dans l'option Serveur est la même pour toutes les chaînes de connexion SQL Server.

Server=myServerName\myInstanceName;Database=myDataBase;User Id=myUsername;
Password=myPassword;

SQL Server 2005

Norme De Sécurité

Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;

Connexion Sécurisée

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;

connexion à une instance de Serveur SQL

la syntaxe nom de serveur/instance utilisée dans l'option Serveur est la même pour toutes les chaînes de connexion SQL Server.

Server=myServerName\myInstanceName;Database=myDataBase;User Id=myUsername;Password=myPassword;

MySQL

Standard

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

spécifiant le port TCP

Server=myServerAddress;Port=1234;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

Oracle

utilisant TNS

Data Source=TORCL;User Id=myUsername;Password=myPassword;

utilisant la sécurité intégrée

Data Source=TORCL;Integrated Security=SSPI;

utilisant ODP.NET sans nom.ora

Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MyOracleSID)));User Id=myUsername;Password=myPassword;
128
répondu Hanlet Escaño 2014-09-15 14:08:04

définit le projet contenant votre classe DbContext comme projet de démarrage.

j'ai eu cette erreur en appelant enable-migrations . Même si dans le Package Manager Console j'ai choisi le droit Default project , il regardait encore le web.fichier de configuration de démarrage du projet, où la chaîne de connexion n'était pas présent.

8
répondu Mart 2016-05-24 10:04:23

Cela pourrait aider quelqu'un.. Mon mot de passe contenait un point-virgule Donc j'ai été confronté à ce problème.Donc ajouté le mot de passe entre guillemets. C'était vraiment une stupide erreur.

j'ai changé le suivant:

<add name="db" connectionString="server=local;database=dbanme;user id=dbuser;password=pass;word" providerName="System.Data.SqlClient" />

à

<add name="db" connectionString="server=local;database=dbanme;user id=dbuser;password='pass;word'" providerName="System.Data.SqlClient" />
5
répondu Abdul Rehman Sayed 2017-11-19 10:31:32

faisant référence au chemin complet de sp a résolu ce problème pour moi:

var command = new SqlCommand("DatabaseName.dbo.StoredProcedureName", conn)
3
répondu anon 2013-06-02 20:51:53

assurez-vous que votre chaîne de connexion est dans ce format:

server = FOOSERVER; database=BLAH_DB;pooling=false;Connect Timeout=60;Integrated Security = SSPI;

si votre chaîne manque la balise server alors la méthode retournerait avec cette erreur.

3
répondu DBNoob 2013-09-16 19:52:14

cela se produit aussi lorsque vous copiez une page web d'une solution à une autre, puis vous exécutez votre solution et découvrez qu'elle a un nom de chaîne de connexion différent dans le webconfig. Ensuite, vous changez le nom de la chaîne de connexion dans le panneau Propriétés dans la vue design de la page.

il vaut mieux le changer dans la partie code au lieu de la conception.

1
répondu Gellie Ann 2015-09-03 05:45:17

mon problème était que j'ai ajouté du code de journalisation de base de données à mon constructeur pour un objet DB, et cela a semblé causer des ravages sur mon profil de déploiement azure.

FYI - j'ai simplifié cet exemple, dans le code réel cela a été éteint dans la production (mais toujours dans le code)

public class MyDB : DbContext
{
    public MyDB()
    {
         this.Database.Log = x => { Debug.WriteLine(x); };
    }
}
1
répondu Aaron Sherman 2016-01-25 14:34:01

j'ai eu de faute de frappe dans mon chaînes de connexion de Base de données "==PESitecore1_master"

<add name="master" connectionString="user id=sa;password=xxxxx;Data Source=APR9038KBD\SQL2014;Database==PESitecore1_master"/>
1
répondu Azadeh Khojandi 2016-04-26 00:52:10

j'ai eu le même problème et j'ai enfin réussi à le résoudre de la manière suivante:

le problème était dans la définition de chaîne de connexion dans mon web.config.

<add name="DefaultConnection" connectionString="DefaultConnection_ConnectionString" providerName="System.Data.SqlClient"/>

ce qui précède a fonctionné parfaitement localement parce que j'ai utilisé une base de données locale quand je gérais les utilisateurs et les rôles. Quand j'ai transféré mon application à IIS la base de données locale n'était plus accessible, en plus je voudrais utiliser ma base de données dans SQL Server. Donc je change la connexion ci-dessus chaîne L'équivalent SQL Server DB suivant:

<add name="DefaultConnection" connectionString="data source=MY_SQL_SERVER; Initial Catalog=MY_DATABASE_NAME; Persist Security Info=true; User Id=sa;Password=Mybl00dyPa$$" providerName="System.Data.SqlClient"/>

NOTE: le ci-dessus, aussi, supposons que vous allez utiliser le même serveur SQL à partir de votre boîte locale (au cas où vous l'incorporez dans votre web local.config - c'est exactement ce que j'ai fait dans mon cas).

1
répondu Andreas Venieris 2016-07-20 17:12:25

j'ai eu le même problème. Localement le site fonctionnait bien, mais sur azure il échouerait avec le message ci-dessus.

s'avère que le problème était de définir la chaîne de connexion dans le ctor, comme ceci:

    public DatabaseContext() 
    {
        Database.Connection.ConnectionString = ConfigurationManager.ConnectionStrings["db"].ConnectionString;
    }

ne fonctionne pas, ce sera:

    public DatabaseContext() : base("db")
    {
    }

me frappe..

1
répondu Flores 2016-09-30 13:42:07

j'ai résolu cela en changeant la chaîne de connexion sur les paramètres d'édition de mon ASP.NET Web Api.

Vérifier ma réponse sur ce post: Comment réparer l'erreur ::Format de la chaîne d'initialisation n'est pas conforme à la spécification de départ à l'indice 0::

1
répondu ndarriulat 2017-05-23 10:31:16

j'ai eu la même erreur. Dans mon cas, c'était parce que je manquais une citation de fermeture pour le mot de passe dans la chaîne de connexion.

changé de

<add name="db" connectionString="server=local;database=dbanme;user id=dbuser;password='password" providerName="System.Data.SqlClient" />

à

<add name="db" connectionString="server=local;database=dbanme;user id=dbuser;password='password'" providerName="System.Data.SqlClient" />
1
répondu Amer Bashoeb 2017-08-22 02:24:23

j'ai eu le même problème, je suis venu à découvrir que le déploiement à IIS n'a pas réglé les chaînes de connexion correctement. ils étaient " $ (ReplacableToken_devConnection-Web.config Connection String_0) ' lors de la visualisation des chaînes de connexion du site dans IIS, au lieu de la chaîne de connexion actuelle. J'ai mis à jour, et tout a fonctionné comme prévu

0
répondu jason 2018-01-15 12:18:38

Vérifiez votre chaîne de connexion comme j'ai oublié d'ajouter services.AddDbContext<dbsContext>(options => options.UseSqlServer("Default"));

il provoque l'erreur et ici quand j'ajoute Configuration.GetConnectionString , alors il résout le problème

comme maintenant la connexion est:

services.AddDbContext<dbsContext>(options => options.UseSqlServer(Configuration.GetConnectionString("Default")));

fonctionne bien (ce problème est résolu pour .net core)

0
répondu user8099291 2018-06-06 18:11:29

j'ai copié et collé ma configuration de chaîne de connexion dans mon projet de test et j'ai commencé à courir dans cette erreur. La chaîne de connexion a bien fonctionné dans mon projet WebAPI. Voici mon fix.

var connection = ConfigurationManager.ConnectionStrings["MyConnectionString"];
UnitOfWork = new UnitOfWork(new SqlConnection(connection.ConnectionString));
0
répondu Kris Kilton 2018-09-18 18:51:56