【发布时间】:2017-09-24 20:24:17
【问题描述】:
我正在使用我的 .Net Core 2.0 应用程序 - 我已经设法将它分成几个项目,但是......
我遇到了问题:如何在另一个程序集中使用 DbContext - .net 标准 2.0 库。
在我的 ConfigureServices 中:
services.AddDbContextPool<MyContext>(options => options.UseSqlServer(Configuration.GetConnectionString("MsSql"), sqlOption => sqlOption.MigrationsAssembly("NetStandardAssemblyName")));
我收到了这个错误信息:
无法创建“GamgooContext”类型的对象。将“IDesignTimeDbContextFactory”的实现添加到项目中,或查看https://go.microsoft.com/fwlink/?linkid=851728 了解设计时支持的其他模式。
我在这里找到了一些解决方案:
https://codingblast.com/entityframework-core-idesigntimedbcontextfactory/
- 但它不适用于我的情况。我不想从我的 .net 核心应用程序中复制配置和连接字符串。
我试图将多个目标框架添加到包含上下文的项目中,就像互联网上其他一些解决方案中建议的那样,但它每次都会使我的 Visual Studio 崩溃。
【问题讨论】:
-
为什么你不能实现
IDesignTimeDbContextFactory?你只需要像在ConfigureServices方法中一样调用UseSqlServer()命令.. -
然后我必须将我的 appconfig 的一部分移动到包含我的上下文的程序集中。
标签: c# asp.net .net entity-framework .net-standard