【问题标题】:Why my identity database table is not migrated to Azure?为什么我的身份数据库表没有迁移到 Azure?
【发布时间】:2019-01-27 10:00:24
【问题描述】:

从 Visual Studio 2017 在 Azure 中发布我的第一个 ASP.NET Core 2.1 Web 应用程序时,我正在设置 EF 迁移,如下图所示:

运行Publish 后,没有创建身份表。在配置-> 设置我有信息,No databases found in the project

我也在使用控制台命令:

dotnet ef database update --context AppIdentityDbContext

什么给了我同样的结果。我从 Azure Show database connection strings 获取的连接字符串,用用户名和密码更新它们。

我不确定我在这里做错了什么。一切都在我的电脑上完美运行。如有任何建议,我将不胜感激。

现在,在尝试填充身份表之后: 公共静态类 IdentitySeedData

 {
        private const string adminUser = "****";
        private const string adminPassword = "****";
        public static async Task EnsurePopulated(UserManager<IdentityUser> userManager)
        {
            IdentityUser user = await userManager.FindByIdAsync(adminUser);
            if (user == null)
            {
                user = new IdentityUser("Admin");
                await userManager.CreateAsync(user, adminPassword);
            }
        }
    }

我收到错误:

AggregateException: One or more errors occurred. (Invalid object name 'AspNetUsers'.)

System.Threading.Tasks.Task.ThrowIfExceptional(bool includeTaskCanceledExceptions)
SqlException: Invalid object name 'AspNetUsers'.

System.Data.SqlClient.SqlCommand+<>c.<ExecuteDbDataReaderAsync>b__108_0(Task<SqlDataReader> result)

更新:我发现,我的问题只出现在身份数据库上。

【问题讨论】:

  • 你有数据库来放表吗? (信息性消息显示“在项目中未找到数据库”。)此外,您可能无法在 Azure SQL 中使用“Admin”作为用户名。
  • @MikeSherrill'CatRecall' 是的,我试图用管理员的登录名和密码为空表做种。我还在学习 Azure,我设法找到了其他基础的表,但只有身份基础没有迁移。
  • 由于我没有设法将身份数据库迁移到 Azure,我在这里找到了替代解决方案:stackoverflow.com/questions/38040976/… 无论如何,感谢大家的努力。

标签: c# azure asp.net-core-mvc


【解决方案1】:

由于我未能将身份数据库迁移到 Azure,我在这里找到了替代解决方案:Invalid object name 'dbo.AspNetUsers' in Asp.NET MVC 5 Entity Framework

【讨论】:

    猜你喜欢
    • 2016-09-29
    • 2015-01-29
    • 2022-09-29
    • 1970-01-01
    • 2021-10-27
    • 1970-01-01
    • 2013-06-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多