从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)
更新:我发现,我的问题仅发生在身份数据库中。
答案 0 :(得分:0)
由于我没有设法将身份数据库迁移到Azure,因此在这里找到了替代解决方案:Invalid object name 'dbo.AspNetUsers' in Asp.NET MVC 5 Entity Framework