recherche

Maison  >  Questions et réponses  >  le corps du texte

C# - Entity Framework Core - Génération automatisée de bases de données

<p>Lorsque j'exécute mon application de bureau pour la première fois, je souhaite que la structure de la base de données et des tables soit créée automatiquement. </p><p> Je ne trouve aucun exemple ou documentation sur la méthode équivalente dans EFCore. </p><p> J'ai tout fait comme décrit dans ce document : https://dev.mysql.com/doc/connector-net/en/connector-net-entityframework-core-example.html </p><p> Mais j'ai toujours le problème : Exception : 'Microsoft.Data.SqlClient.SqlException' lancé dans Microsoft.Data.SqlClient.dll et la base de données est vide :( Si vous pouvez m'aider, faites-le moi savoir. </p><p></p> <pre class="brush:php;toolbar:false;">protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { essayer { optionsBuilder.UseMySQL("server=localhost;userid=root;password=topSecret;database=kartoteka-pracownicza"); } attraper (MySqlException ex) { commutateur (ex. Numéro) { cas 0 : MessageBox.Show("Impossible de se connecter au serveur, veuillez contacter l'administrateur"); casser; cas 1045 : MessageBox.Show("Nom d'utilisateur/mot de passe invalide, veuillez réessayer"); casser; } } ; }</pre></p>
P粉520204081P粉520204081498 Il y a quelques jours507

répondre à tous(1)je répondrai

  • P粉986028039

    P粉9860280392023-08-27 16:17:15

    Bonjour, si vous utilisez des migrations, vous pouvez ajouter quelque chose comme ceci à votre Startup.cs :

    public void Configure(IApplicationBuilder app)
        {
             using (var serviceScope = 
             app.ApplicationServices.GetService<IServiceScopeFactory>().CreateScope())
             {
                   var context = serviceScope.ServiceProvider.GetRequiredService<ApplicationDbContext>();
                   context.Database.Migrate();
             }
        }

    Si vous n'utilisez pas de migrations, vous pouvez utiliser Migrate(); 替换为 EnsureCreated(); pour utiliser le contexte de votre base de données.

    répondre
    0
  • Annulerrépondre