回答
最好的辦法是使用TFS DLL和API,它位於http://msdn.microsoft.com/en-us/library/bb130146(VS.80).aspx和http://msdn.microsoft.com/en-us/library/bb130334(v=VS.80).aspx。據我所知,直接打網頁服務是令人不悅的。
要獲得項目清單,我認爲有多種方法可以做到這一點。我發佈了我使用的代碼:使用GetServer方法獲取項目集合,然後通過ListProjects()方法列出。我需要這樣做,因爲我需要獲取區域和迭代。這需要Microsoft.TeamFoundation.Client命名空間。
var tfs = TeamFoundationServerFactory.GetServer(Constants.TEAMFOUNDSERVER);
var projectCollection = (ICommonStructureService)tfs.GetService(typeof(ICommonStructureService));
foreach (var projectInfo in projectCollection.ListProjects())
{
//do stuff here
}
我同意bryanjonker。不要直接調用web服務,這是真的保留供內部使用。創建您自己的訪問層並調用API。
您也可以使用對象模型來訪問ICommonStructureService。我最近開始使用它,並發現它更乾淨。下面的代碼和bryanjonker的例子是一樣的:
var tfs = TeamFoundationServerFactory.GetServer(serverUri);
var projectCollection = tfs.GetService<ICommonStructureService>();
foreach (var projectInfo in projectCollection.ListProjects())
{
listBox1.Items.Add(projectInfo.Name);
}
謝謝,我知道使用TFS DLL是很好的。但是我在Ubuntu上開發,所以我想我沒有更好的選擇來溝通TFS ...如果有人請告訴我 – 2010-05-25 16:09:21
您可以爲自己創建一個位於TFS服務器上的Web服務層嗎? – Robaticus 2010-05-25 17:19:51
@Prashant:你在Ubuntu中使用什麼語言? – 2012-06-12 22:25:48
- 1. 如何從XSL獲取項目列表
- 2. 如何批量從項目列表中獲取子項目?
- 3. 如何從項目列表中獲取所選項目的值
- 4. 如何從列表框中獲取列表框項目wpf
- 5. TFS獲取項目名稱
- 6. 如何獲取TFS選項字段的選項列表?
- 7. 如何獲取TreeView項目列表
- 8. 如何獲取CollectionBase項目的列表?
- 9. 如何從列表項中獲取單個項目
- 10. 如何從列表中獲得項目
- 11. 如何從列表中獲取序列中的項目Qore
- 12. 如何通過c從tfs獲取所有工作項目#
- 13. 如何運行Windows腳本文件以從TFS獲取項目?
- 14. 從列表中獲取項目foreach
- 15. 從ID列表中獲取項目
- 16. 函數從列表中獲取項目
- 17. Python:從列表中獲取項目
- 18. 從列表框項目獲取值
- 19. Android:GUI:從列表視圖獲取項目
- 20. 從列表中獲取唯一項目?
- 21. 從列表視圖獲取項目[i]
- 22. TFS - 從構建工作項目獲取工作項目
- 23. TFS API - 如何從特定團隊項目中獲取工作項目
- 24. 獲取列表項目GUID
- 25. 獲取列表項目數
- 26. Appium獲取列表項目
- 27. 從TFS獲取文件列表
- 28. 如何從C#中的TFS中檢索工作項目列表?
- 29. 如何獲取具有特定子項目的項目列表?
- 30. 從TFS項目列表中刪除Visual Studio項目
謝謝,我知道這是很好的使用TFS的DLL。但我在Ubuntu上開發,所以我想我沒有更好的選擇來溝通TFS ...如果有一個請讓我知道 – 2010-05-25 16:09:40
我同意Robaticus - 在.NET中編寫自己的Web服務層並執行這個。否則,當微軟改變他們的web服務層時,你需要做很多返工。 或者,與單聲道?我相信這些DLL是託管代碼。 – bryanjonker 2010-05-25 17:49:26