NuGet服务器 - 私有存储库 - 动态更改nuget包位置

Nag*_*j M 5 routing nuget

我们正在私人存储库中为我们自己的私有nuget包工作.我们可以为每位客户更改nuget Feed.但是nuget包位于Web.Config中指定的位置.

是否有可能通过路由(URL)动态更改位置?我已经在http://blog.maartenballiauw.be/post/2011/05/09/Using-dynamic-WCF-service-routes.aspx上找到了这个博客, 即使包url引用了webconfig文件中给出的路径

    public static void MapNugetRoutes(RouteCollection routes)
            {
                var factory = new DataServiceHostFactory();
                var serviceRoute = new ServiceRoute("nuget/packages/getpackages/{platform}", factory, typeof(Packages));
                serviceRoute.Defaults = new RouteValueDictionary { { "serviceType", "odata" } };
                serviceRoute.Constraints = new RouteValueDictionary { { "serviceType", "odata" } };
                routes.Add("nuget", serviceRoute);
}

<appSettings>
    <add key="requireApiKey" value="true" />
    <add key="apiKey" value="" />
    <add key="packagesPath" value="~/NugetPackages/" />
    <add key="enableSimpleMembership" value="false" />
    <add key="" />
  </appSettings>
Run Code Online (Sandbox Code Playgroud)

"NugetPackages"是我的本地存储地址,我需要私下访问存储库,就像上面的位置有几个文件夹,我需要动态访问文件夹NugetPackages/folder1,NugetPackages/folder2这样,是否可能?

提前致谢..

Nag*_*j M 2

选项 1:我通过为每个平台添加子应用程序并重定向到 nugetrepositary 解决了这个问题。现在工作正常

选项2:几年后,我找到了ProGet。使用此服务器,您可以轻松管理多个 NuGet 源。它还提供支持所有功能的免费版本。