2012-12-08 48 views
2

我已經創建了一個多項目模板,並且在創建一個新項目時,我在成爲常規發行版本時將nuget包成功安裝到了所有項目中,但是我試圖抓取信號的售前版本,它無法找到版本'1.0.0-alpha2'。我假設是因爲它是一個預發行版。具有多項目模板的IWizard來抓取nuget預發包

Install-Package Microsoft.AspNet.SignalR.JS -version 1.0.0-alpha2 

...有什麼用,我需要做的,抓住它或我在做什麼錯的API不同:雖然我可以從VS的PM提示中使用搶呢?我的項目模板嚮導中

var componentModel = (IComponentModel)services.GetService(typeof(SComponentModel)); 
IVsPackageInstaller installerServices = componentModel.GetService<IVsPackageInstaller(); 

installerServices.InstallPackage("http://packages.nuget.org", project, "Microsoft.AspNet.SignalR.JS", "1.0.0-alpha2", false); 

回答

2

好吧,這可與https://www.nuget.org/api/v2/爲目標,而不是在packages.nuget.org老V1。發現V2與小提琴手

+0

我試圖相同,但我得到了一個錯誤,指出「‘System.InvalidOperationException’類型發生在NuGet.VisualStudio.dll的一個例外,但在用戶代碼 其他信息沒有處理:將項目「核心」不受支持「。你有什麼想法,爲什麼我得到這個錯誤? –

+0

你的Nuget.VisualStudio.dll是什麼版本?你遵循了這個嗎? http://docs.nuget.org/docs/reference/invoking-nuget-services-from-inside-visual-studio如果您使用的是新版本,則不再引用Nuget.Core.dll – cjsmith

+0

是的,我刪除了nuget.core,它工作。謝謝 :) –