发布.Net Core RC1应用程序后,project.json中指定的命令具有为其创建的相应.cmd文件,这些文件可在部署后执行(例如web.cmd和ef.cmd).在我的例子中,我想在我的部署目标上运行以下Entity Framework命令:
dotnet ef database update -c MyContext
Run Code Online (Sandbox Code Playgroud)
当我从包含源代码的文件夹运行它时,这工作正常,但是在发布后,它似乎没有在编译的DLL中找到命令.我对RC2命令变化的理解是"工具"可以编译为名为dotnet - *.dll的独立应用程序,并且可以通过CLI执行.如何将实体框架核心工具公开为已发布输出中的可执行DLL?
仅供参考,我的构建/部署工作流程如下:
TeamCity的
dotnet restore => dotnet build => dotnet test => dotnet publish
八达通部署
上传包=> EF更新数据库=>等
我有一个控制台应用程序,可以根据 poco 实体自动生成存储库模式的 C# 类和接口,这些实体是使用 Visual Studio 中的 NuGet 包管理器控制台中的 Scaffold-DbContext 命令自动生成的。为了自动化生成 pocos 以及相关存储库和接口的整个过程,我希望能够直接从控制台应用程序调用 Scaffold-DbContext 命令。是否可以在本机 CLI 之外调用 NuGet 包管理器控制台命令?