Nuget dll在/packages文件夹中,当升级到生产环境时,我们应该改为/bin



nuget包似乎被存储在我们的applications/packages文件夹中。

我很困惑,因为我看不到/bin(这是我们用来提升到生产的文件夹)中的dll。

我应该只是改变路径在引用/bin和复制local = true?

我只是想确认一下,因为我不明白为什么它去了/packages

No。如果您使用bin作为构建的输出目录,则不应该引用其中的任何内容。您应该有一个单独的位置来引用您的dll。当一个项目构建时,它会将所有必需的dll/exe复制到/bin文件夹中。当您执行清理时,这些程序集将被删除。

使用/bin也可能导致你的构建模式(调试/发布)的问题,你怎么能确定你引用的是正确的,当他们都混在一起。

那个单独的位置看起来可能是你的/packages目录,尽管需要更多的信息来确定。

当我必须这样做时,我在项目根目录下创建一个'lib'文件夹,将第三方或预构建的程序集放在那里,并从那里引用它们。Copy local=true将它们复制到我运行(或复制)程序的/bin文件夹。如果我正在开发一套程序,'lib'将是我所有程序可以从中提取的共享位置。

是的,将copy local设置为"true"将是正确的方法。如果您不希望在…Packages文件夹,并希望它在一个集中的位置——比如在你的源代码控制或公共lib文件夹的根目录,你可以在nuget中添加仓库路径。配置文件。更多细节请点击这里@ http://docs.nuget.org/docs/release-notes/nuget-2.1#Specify_%e2%80%98packages%e2%80%99_Folder_Location

相关内容

最新更新