Question

J'ai un site Web simple qui utilise EF Code First et LocalDB.C'est dans mon web.config :

<connectionStrings>
  <add name="MyContext" providerName="System.Data.SqlClient" connectionString="Server=(localdb)\v11.0;Integrated Security=true;"/>
</connectionStrings>

Mon site Web fonctionne bien, les commandes PowerShell comme Update-Database et Add-Migration fonctionne bien, cependant, je ne vois la base de données nulle part dans Visual Studio.Pas dans l'Explorateur d'objets SQL Server, ni dans l'Explorateur de serveurs (lorsque j'essaie de me connecter à la base de données "MyContext" sur le (localdb)\v11 serveur, la boîte de dialogue me dit qu'il n'y a pas de base de données là-bas).

MyContext misssing

Je suis confus.Où est ma base de données ?

Était-ce utile?

La solution

Il existe une propriété définie : Catalogue initial

Data Source=(localdb)\v11.0;Initial Catalog=YourDbName;Integrated Security=True;

Autres conseils

Vous devez spécifier le nom de la base de données dans votre chaîne de connexion, comme ceci :

Server=(localdb)\v11.0;Database=YourDbName;Integrated Security=SSPI;

ou, dans le format le plus typique (puisque c'est le format généré par SqlConnectionStringBuilder):

Data Source=(localdb)\v11.0;Initial Catalog=YourDbName;Integrated Security=True;

Il convient de noter pour les développeurs chevronnés que l'utilisation de « SSPI » est encouragé :

Quand false, l'ID utilisateur et le mot de passe sont spécifiés dans la connexion.Lorsque cela est vrai, les informations d'identification du compte Windows actuel sont utilisées pour l'authentification.
Les valeurs reconnues sont true, false, yes, no, et sspi (fortement recommandé), ce qui équivaut à true.

Et aussi ça la documentation sur la chaîne de connexion sur MSDN sont assez exhaustifs si vous vous demandez quelles clés sont valables pour tous les fournisseurs, et aussi quelles clés sont valides pour le fournisseur SqlClient.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top