Deployment NuGet包依赖项和构建/部署服务器

Deployment NuGet包依赖项和构建/部署服务器,deployment,nuget,build-process,artifacts,Deployment,Nuget,Build Process,Artifacts,我们在ASP.net/MVC项目上使用FluentMigrator(一个NuGet包)来维护对SQL Server的数据库更改 在部署期间使用其他构建工件分发NuGet包的“正确”方法是什么?我是否只需要“软件包”文件夹? 我希望得到的回应不是“使用软件包管理器并在PROD上安装Nuget软件包” 我不想在部署期间拉取包(来自本地或非本地源),我想在编译的代码中包含正确的包。正确的方法是在构建项目之前先拉取包,然后假设您的项目引用程序集,以便“复制本地”为真,它将包含在构建输出中,该输出应作为工

我们在ASP.net/MVC项目上使用FluentMigrator(一个NuGet包)来维护对SQL Server的数据库更改

在部署期间使用其他构建工件分发NuGet包的“正确”方法是什么?我是否只需要“软件包”文件夹?

我希望得到的回应不是“使用软件包管理器并在PROD上安装Nuget软件包”


我不想在部署期间拉取包(来自本地或非本地源),我想在编译的代码中包含正确的包。

正确的方法是在构建项目之前先拉取包,然后假设您的项目引用程序集,以便“复制本地”为真,它将包含在构建输出中,该输出应作为工件存储在CI工具中


在构建/部署过程中,除了这一点之外,您绝对不应该做任何与NuGet相关的事情。

我们使用的是Fluent Migrator,除了构建时引用的dll(CopyLocal=True)之外,我们还使用包中的exe(及其依赖的文件)来推动DB更改。更清楚地说,我们对包有构建时依赖,但对包也有部署时依赖。我不想在部署期间将程序包拉下来,我想将其与我的应用程序一起分发。能否将.exe文件的生成操作设置为VS属性窗口中的内容?这样,它将被视为一个独立的文件,并包含在输出中。您还可以将其作为资源嵌入,并在运行时将其写入磁盘—具体取决于您需要什么。