2012-12-13 27 views
5

我創建了一個與TFS服務器交互的Windows服務,並且它在本地計算機上正常工作。爲了做到這一點,我必須添加對Microsoft.TeamFoundation.Client.dll的引用 - 我從我的本地機器上的TFS安裝中複製了此文件,然後將其添加到文件夾中,然後將引用添加到dll中我的項目。使用Team Foundation Server DLL作爲類庫中的參考

現在我需要在服務器上進行部署,並且我認爲將服務器上的dll複製到與.exe相同的級別上就足夠了。但它一直在說Could not load file or assembly 'Microsoft.TeamFoundation.Client

我需要在這裏做什麼?

編輯:好的,所以我發現微軟的dll是32位,而服務器是64位。我改變了我的服務目標爲32位也,我仍然有同樣的問題...

+0

你能給我們提供關於例外的更多信息嗎?此外,也許你的問題與[這個問題]相關(http://stackoverflow.com/questions/12643654/could-not-load-file-or-assembly-microsoft-teamfoundation-workitemtracking-clien)。 – Styxxy

+0

我只有這樣:無法加載文件或程序集'Microsoft.TeamFoundation.Client,Version = 10.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依賴項之一。該系統找不到指定的文件。 –

+0

我建議你運行這個通過反射器或類似的機器上沒有安裝TFS並通過參考,它會彈出並要求你缺少什麼 –

回答

7

Team Foundation Server對象模型(客戶端程序集)安裝在GAC(以及它的其他依賴項)。它們作爲Visual Studio和團隊資源管理器SKU的一部分進行分發,這是支持將其作爲重新分區使用的方式。

最近的對象模型也有人提出可以作爲一個單獨的安裝:

http://visualstudiogallery.msdn.microsoft.com/a37e19fb-3052-4fc9-bef7-4a4682069a75

這對2010年的OM。我相信2012年的OM安裝程序正在開發中。

這裏有一個相關鏈接:

http://blogs.msdn.com/b/buckh/archive/2012/07/14/standalone-installer-for-the-tfs-client-object-model.aspx

如果你必須有2012 OM它發佈爲一個單獨的SKU之前,解決辦法是利用現有的團隊資源管理器SKU這裏:

http://www.microsoft.com/en-us/download/details.aspx?id=30656

更新:2012 OM redist here:http://visualstudiogallery.msdn.microsoft.com/f30e5cc7-036e-449c-a541-d522299445aa

UPDATE: 2015年,OM已不在GAC中。轉移到Nuget包以消耗。

+0

完美。我需要一種方法來獲取那裏的DLL,而不必手動複製它們......無論出於何種原因,它沒有看到我複製的DLL,但是一旦我安裝了它,它就看到了它... –

+0

很棒 - 2012 OM redist已更新。 – bryanmac

+0

請不要鏈接,請在這裏寫下答案。 –