我们正在私人存储库中使用我们自己的私有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>
“NugetPackages”是我的本地存储地址,我需要私下访问存储库,就像上面的位置里面有几个文件夹,我需要动态访问文件夹NugetPackages / folder1,NugetPackages / folder2这样, 有可能吗?
提前感谢..
答案 0 :(得分:2)
选项1:我通过为每个平台添加子应用程序并重定向到nugetrepositary来解决了这个问题。它现在工作正常
选项2:几年后,我找到了ProGet。使用此服务器,您可以轻松管理多个NuGet源。它还提供支持所有功能的免费版本。