我是新來的拉力賽世界,我正在努力通過如何使用RallyRestAPI。有很多關於如何查詢拉力賽來取回我發現最有用的相關信息的例子。我想要做的是創建一個C#命令行工具來將用戶添加到項目中。看來我使用RallyRestAPI.Create(「projectpermission」,一些動態json對象)接口來完成創建。我的問題是理解「一些動態json對象」部分。我不確定如何正確設置它。如果有人有一個如何設置它的小例子,我將不勝感激。拉力賽API:將用戶添加到項目中
2
A
回答
0
下面是說明如何做到這一點的代碼示例。需要注意的是:
- 用戶名運行的代碼來創建權限必須是工作區或訂閱管理員
用戶必須已經具有權限的工作區(即是一個工作區用戶)爲了使ProjectPermission創建成功
命名空間RestExample_AddUsersToProject { 類節目 { 靜態無效的主要(字符串[]參數) {
String userName = "[email protected]"; String userPassword = "topsecret"; String serverUrl = "https://rally1.rallydev.com"; String wsapiVersion = "1.38"; RallyRestApi restApi = new RallyRestApi( userName, userPassword, serverUrl, wsapiVersion ); restApi.Headers[RallyRestApi.HeaderType.Vendor] = "Rally Software"; restApi.Headers[RallyRestApi.HeaderType.Name] = "RestExample_AddUsersToProject"; // Query for Project for which we want to add permissions Request projectRequest = new Request("project"); projectRequest.Fetch = new List<string>() { "Name", "Owner", "State", "Description" }; String projectName = "Avalanche Hazard Mapping"; projectRequest.Query = new Query("Name", Query.Operator.Equals, projectName); QueryResult queryProjectResults = restApi.Query(projectRequest); var myProject = queryProjectResults.Results.First(); String myProjectReference = myProject["_ref"]; Console.WriteLine("Project Name: " + myProject["Name"]); Console.WriteLine("State: " + myProject["State"]); // Query for User for whom we wish to add ProjectPermission Request userRequest = new Request("user"); userRequest.Fetch = new List<string>() { "UserName", "Subscription", "DisplayName" }; // User needing the permissions userRequest.Query = new Query("UserName", Query.Operator.Equals, "\"[email protected]\""); QueryResult queryUserResults = restApi.Query(userRequest); var myUser = queryUserResults.Results.First(); String myUserReference = myUser["_ref"]; Console.WriteLine("Username: " + myUser["UserName"]); Console.WriteLine("Display Name: " + myUser["DisplayName"]); Console.WriteLine("Subscription: " + myUser["Subscription"]); // Setup required ProjectPermission data DynamicJsonObject newProjectPermission = new DynamicJsonObject(); newProjectPermission["User"] = myUser; newProjectPermission["Project"] = myProject; newProjectPermission["Role"] = "Editor"; // Create the permission in Rally CreateResult addProjectPermissionResult = restApi.Create("ProjectPermission", newProjectPermission); DynamicJsonObject fetchedProjectPermission = restApi.GetByReference(addProjectPermissionResult.Reference, "Name"); Console.WriteLine("Created ProjectPermission with Role: " + fetchedProjectPermission["Name"]); } }
}
0
有CRUD +查詢這裏的一些非常基本的例子:
http://developer.rallydev.com/help/rest-api-net
的一般流程總是會創建一個新的DynamicJsonObject,設置相應的字段,然後通過該對象的創建方法RallyRestApi。
相關問題
- 1. 拉力拉力賽新組合項目
- 2. 拉力賽API向現有用戶添加標籤NodeJS
- 3. 拉力賽查詢項目/子項目
- 4. 如何使用Rally的JAVA API將標籤添加到拉力賽中的TestCase?
- 5. 如何將批量用戶添加到不同工作區下的現有拉力賽項目中?
- 6. 使用C#拉力賽RestApi來添加和更新拉力賽項目變化集
- 7. 查詢拉力賽的項目業主
- 8. 導出拉力賽項目數據
- 9. 新的拉力賽API,試圖添加測試用例結果
- 10. 拉力賽的Python API
- 11. 拉力賽工具 - API
- 12. 如何使用拉力賽的Ruby API
- 13. gcutil將新用戶添加到項目
- 14. Google Cloud將用戶添加到項目
- 15. 從拉力賽SDK 1.32升級我的拉力賽應用程序到拉力賽SDK 2.0p5
- 16. 通過拉力賽API更改用戶權限
- 17. 拉力賽API無法更改用戶的工作區權限
- 18. 將Google API添加到流星項目
- 19. 拉力賽利用網絡服務批量添加測試用例結果API
- 20. 拉力賽:我通過Web服務API
- 21. 拉力賽API 2檢查模型,
- 22. 如何在拉力賽C#API
- 23. 拉力賽API 2.0模型與模型
- 24. 拉力賽的Java API回溯期
- 25. 拉力賽自定義下拉到multiSelect
- 26. 想要將拉力賽故事從一個項目複製到另一個
- 27. 如何在拉力賽網格/拉力賽網格中添加搜索字段在拉力賽自定義報告中
- 28. 將JIRA Agile用於Scrum(來自拉力賽用戶背景)
- 29. 使用HTML連接到拉力賽
- 30. 項目添加到下拉框中
謝謝。這就是我需要看到的。 – dfrobison