无法在类库包中的实体框架 7 beta4 上运行迁移

本文关键字:beta4 运行 迁移 框架 实体 类库 包中 | 更新日期: 2023-09-27 17:55:35

我无法在类库包中执行迁移命令。我的dnvm版本是(来自global.json):

"sdk": {
        "version": "1.0.0-beta5-12021"
    }

我正在我的项目 JSON 中导入它。

"dependencies": {
   "EntityFramework.Commands": "7.0.0-beta4",
   "EntityFramework.SqlServer": "7.0.0-beta4",
   "Microsoft.CSharp": "4.0.0-beta-22816",
   "System.Collections": "4.0.10-beta-22816",
   "System.Linq": "4.0.0-beta-22816",
   "System.Threading": "4.0.10-beta-22816",
   "EntityFramework.Core": "7.0.0-beta4"
},
"commands": {
   "ef": "EntityFramework.Commands"
}

我的 DbContext 继承类中的 OnConfigure 方法是

protected override void OnConfiguring(DbContextOptionsBuilder    optionsBuilder)
    {
        optionsBuilder.UseSqlServer(@"Server=(localdb)'ProjectsV12;Database=Ef7;Trusted_Connection=True;");
    }

但是当我跑dnx . ef migration add initial我得到以下输出:

System.ArgumentNullException: Value cannot be null.
Parameter name: appEnv
   at Microsoft.Data.Entity.Utilities.Check.NotNull[T](T value, String parameterName)
   at Microsoft.Data.Entity.Commands.Program..ctor(IServiceProvider serviceProvider, IApplicationEnvironment appEnv, ILibraryManager libraryManager)

我一直在努力解决这个问题一段时间,所以感谢所有的帮助。谢谢。

无法在类库包中的实体框架 7 beta4 上运行迁移

我刚刚找到了解决这个问题的方法。这似乎发生在最新版本的 coreclr 上。而不是打电话

dnvm install -r coreclr latest

我调用以下内容从最新版本切换到beta4。

dnvm use 1.0.0-beta4 -r coreclr

当我打电话给"dnx .ef",实体框架迁移工具将启动。