在我们的环境中,我们目前有一个嵌套文件夹结构来保存我们的程序集。 例如:\ SERVER \ Assemblies \ SomeCompany \ MyRockinAssembly \ v1.0.0.0 \ MyRockinAssembly.dll
我们正在寻找创建NuGet包的原因,并希望将它们存储在同一个结构中。因此,我们将nupkg存储在dll所在的相同位置:\ SERVER \ Assemblies \ SomeCompany \ MyRockinAssembly \ v1.0.0.0 \ MyRockinAssembly.nupkg。
然后,我们计划添加本地Intranet包源并将其指向此目录。但是,包管理器似乎没有搜索嵌套文件夹。如果我将nupkg移动到只有1级深度,那么它的效果会与我们现有的标准有关。
有没有办法让nuget深入搜索所有搜索包的子文件夹?
或者这是对他们团队的功能请求:)
答案 0 :(得分:0)
NuGet存储库本质上是一个包含一组NuGet包的简单文件夹。除非在客户端中注册大量存储库,每个存储库都指向此树结构中的特定目录,否则无法通过构建此类文件夹树来实现所需的结构AFAIK。对于您的软件包的消费者而言,这可能会变得非常不方便,更不用说在未来的更复杂的事情上(在自动构建等)。
但是,您可以使用包ID结构,例如:
CompanyName.ProductSuite.Product.Component.1.0.0.nupkg
现在至少会对您的存储库进行排序,消费者可以根据此约定进行过滤/搜索。
您还可以查看MyGet.org(NuGet-as-a-Service),创建多个Feed并配置一般Feed,将其他Feed作为底层包源。本博文中详细解释了其工作原理:http://blog.myget.org/post/2012/03/01/Introducing-MyGet-package-source-proxy-(beta).aspx