2017-02-20 2 views
0

Je rencontre des problèmes pour configurer LocalDB correctement. Ceci est la configuration:Comment puis-je appliquer LocalDB pour utiliser la même base de données (entre projets et entités)?

  • Projet "DataAccess", contenant un environnement EF6 DbContext avec les premières migrations de code activées. Pas app.config, faisant plutôt référence au projet ci-dessous via le paramètre StartUpProject.
  • projet "Web", une application MVC qui contient la chaîne de connexion suivante:

    <add name="devDatabase" connectionString="Data Source=(LocalDB)\MSSQLLocalDB;Integrated Security=True;AttachDbFilename=c:\Temp\devDB.mdf" providerName="System.Data.SqlClient"/>

Lorsque vous appelez Update-Database dans le projet de données, un fichier MDF DataAccess.DataContext.mdf est créé dans le répertoire App_Data du MVC projet. C'est le premier problème, car ce n'est pas ce que j'attendrais de la configuration ci-dessus.

Le deuxième problème est que lorsque vous lancez réellement l'application MVC et accédez à la base de données, un autre jeu de fichiers MDF est créé. Dans mon cas, cela se traduira par deux fichiers:

  • DataAccess.DataContext`1[Entity1].mdf
  • DataAccess.DataContext`1[Entity2].mdf

Alors maintenant, je mes données dispersées sur un tas de fichiers, ce qui est totalement inutile bien sûr. Quelqu'un peut-il me signaler dans la bonne direction ce qui me manque ici?

Répondre

0

Ok, après avoir installé SQL Express et rencontré essentiellement le même problème, j'ai trouvé une solution. J'ai ajouté le nom de chaîne de connexion à ma mise en œuvre de DbContext et maintenant ça fonctionne:

public class DataContext : DbContext 
{ 
    public DbSet<Entity1> SomeEntities { get; set; } 

    public DataContext() : base("name=DatabaseConnectionString") 
    { 

    } 
} 
<connectionStrings> 
    <add name="DatabaseConnectionString" 
     connectionString="Data Source=(LocalDB)\MSSQLLocalDB;Initial Catalog=MBLux.CAP;Integrated Security=True;" 
     providerName="System.Data.SqlClient" /> 
</connectionStrings>