我最初感到困惑/惊讶看到EF Core 1.1使用.NET 4.X的旧命令,但我在这些示例中找到了它(https://docs.microsoft.com/en-us/ef/core/get-started/aspnetcore/new-db)并且使用这些熟悉的命令就可以了。 / p>
现在我有一个使用EFCore 1.1构建的数据库并且正常工作,命令非常适合迁移等。
现在是时候推出生产了,我需要生成脚本,以便处理人员推广到环境。我现在意识到-Script标志不可用所以我尝试恢复“dotnet ef”命令并获得“dotnet-ef”未找到的错误。
经过进一步调查,看起来我需要升级到Microsoft.EntityFrameworkCore.Tools.DotNet。我试试这个,只是为了得到这个错误“Package'Microsoft.EntityFrameworkCore.Tools.DotNet 1.1.0-preview4-final'使用当前版本的NuGet不支持的功能。”我没有看到通过扩展和更新可用的任何升级,所以我只能假设有一个预发布版本浮动或这只适用于VS2017(我已被烧太多次转移到未发布的VS版本,所以现在暂缓)。
我注意到nuget认为Microsoft.EntityFrameworkCore.Tools 1.1.0-preview4-final是最新版本,但根据我可以告诉的日期,1.1.0-msbuild3-final是最新版本。我转向那个,只需要忽略nuget包管理器,希望我“升级”到旧版本。
生成sql脚本仍然没有运气。对于我如何到达这里的冗长详细信息感到抱歉,但我仍然无法为我的EF Core数据库生成脚本,并且不是没有努力。
回到最初的问题,如何使用.NET 4.6.1导出到EF Core 1.1中的脚本?
非常感谢任何帮助!
答案 0 :(得分:0)
另一个堆栈溢出问题(https://stackoverflow.com/a/38725740/1362146)的答案使我朝着正确的方向前进。
从https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell我能够识别脚本迁移命令。如果针对不同的版本/组合有很多不同的例子,并且事情发生频繁变化,那么很难筛选出所有内容。