【发布时间】:2021-02-16 21:51:44
【问题描述】:
我有一个非常基本的迁移文件。我正在包管理器控制台窗口中执行dotnet ef database update --verbose,SQL Server 中没有生成任何内容。
Package Manager Console 窗口中的最后几行输出如下所示:
Finding design-time services for provider Microsoft.EntityFrameworkCore.SqlServer...
Using design-time services from provider Microsoft.EntityFrameworkCore.SqlServer.
Finding design-time services referenced by assembly BM.Server.
No referenced design-time services were found.
Finding IDesignTimeServices implementations in assembly BM.Server...
No design-time services were found.
Done.
这是我的代码的样子,添加和删除迁移工作。它只是试图更新我遇到此问题的数据库。
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<BMDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("BMDbConnectionString")));
}
}
public class BMDbContext : DbContext
{
public BMDbContext(DbContextOptions<BMDbContext> options) : base(options) { }
}
我还为该项目安装了以下 nuget 包,并且两个 dll 都在我的 bin 目录中: Microsoft.EntityFrameworkCore.SqlServer Microsoft.EntityFrameworkCore.Design
【问题讨论】:
-
请参考这篇文章docs.microsoft.com/en-us/ef/core/miscellaneous/cli/…并创建设计时dbcontext
-
@SergeyAnisimov 看起来我在您提供的链接中拥有所有内容。我已经更新了我的帖子以显示我的代码。谢谢。