首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在AWS上部署时不存在MySQL表

在AWS上部署时不存在MySQL表
EN

Stack Overflow用户
提问于 2016-10-26 00:59:01
回答 2查看 808关注 0票数 3

我将我的.net核心应用程序部署到aws中,但不知道如何进行初始迁移以创建表。在使用代码第一方法时,是否存在与aws上的dotnet ef migrations add Initial dotnet ef database update等效的创建表的方法?我的代码在网上失败:

代码语言:javascript
运行
复制
if (context.Record.Any())
            {
                return;   // DB has been seeded
            }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-01 21:36:17

通过将MySQL连接器从MySql.Data.EntityFrameworkCore更改为SapientGuardian.EntityFrameworkCore.MySql解决了问题。然后使用默认命令执行所有迁移。

票数 1
EN

Stack Overflow用户

发布于 2016-10-26 05:59:48

就像你为了发展而做的一样。

您必须在应用程序启动期间调用dbContext.Database.EnsureCreated() (Configure方法)。

您需要创建服务范围,然后解析您的DbContext

代码语言:javascript
运行
复制
public void Configure(IApplicationBuilder app)
{
    using (var scope = app.ApplicationServices.GetService<IServiceScopeFactory>().CreateScope())
    {
        using (var dbContext = scope.ServiceProvider.GetRequiredService<AppDbContext>())
        {
            if (dbContext.Database.EnsureCreated())
            {
                // Seed your database if necessary
            }
        }
    }
}

现在,这是创建表的唯一方法,因为Oracle尚未实现迁移或脚手架。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40252056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档