c# - 从执行具体目标版本查询的 HP ALM 获取需求
问题描述
我需要获得具体目标版本(字段 user-template-18)的企业 HPE ALM 中的所有要求。为了获得这些要求,我在我正在开发的 C# 项目中的代码中使用了下一个 url:http://<hp_alm>/qcbin/rest/domains/<name_domain>/projects/<name_project>/requirements /?fields=id,name,description,user-03,user-template-18
使用之前的 url,我通过 url navigator 获取企业 HPE ALM 中可用的具体 id 的所有这些字段。我的最终目标是实现如何在我的代码项目中实现/执行下一个 sql。
如果我直接在 HP ALM 控制台中执行下一个 sql,则正确返回具体目标版本的所需要求:select id,name,description,user-03,user-template-18 from req where type_id = '108' and user-模板 18 = '<version_target>'
谁能指定如何实现代码以获取执行ac#项目中具体目标版本的先前sql的所有要求?
提前致谢 问候
解决方案
我开发了下一种方法来获取 HP ALM 的具体目标版本 (<target_version>) 的所有要求,并且在 XmlSerializer 行中出现错误。
您能否确认附加代码中存在哪个错误?
public Entity LoginAlm (string url, string username, string password, string domain, string project, string targetVersion) {
var client = new RestClient(url + "/qcbin/");
client.Authenticator = new HttpBasicAuthenticator(username, password);
client.CookieContainer = new System.Net.CookieContainer();
var Domain = domain;
var Project = project;
var getItems1 = new RestRequest("authentication-point/authenticate");
IRestResponse response1 = client.Execute(getItems1);
var getItems2 = new RestRequest("rest/site-session", Method.GET);
IRestResponse response2 = client.Execute(getItems2);
string sql = "select id,name,description,user-03,user-31,user-template-03,father-name " +
"from req where type_id = '108' and user-template-18 = '<target_version>'";
var getReqs = new RestRequest("rest/domains/" + Domain + "/projects/" + Project + "/requirements?query=[{" + sql + '}' + ']');
getReqs.AddHeader("Content-Type", "application/xml");
getReqs.AddHeader("Accept", "application/xml");
getReqs.AddParameter("domain", Domain, ParameterType.UrlSegment);
getReqs.AddParameter("project", Project, ParameterType.UrlSegment);
IRestResponse response = client.Execute(getReqs);
var reader = new StringReader(response.Content);
var serializer = new XmlSerializer(typeof(Entity));
var instance = (Entity)serializer.Deserialize(reader);
return instance;//JsonConvert.SerializeObject(instance, Newtonsoft.Json.Formatting.Indented);
}
推荐阅读
- c# - 如何在 MongoDB 中检查数据库连接
- mongodb - 从 Java 8 LocalDateTime 到 MongoDB 的映射异常
- java - JAVA中依赖关系的子资源问题
- sql - SQL Server:更改身份种子
- node.js - 为客户端和服务器创建 docker 文件
- reactjs - 无法从服务器更改状态 redux 数据反应本机
- c# - 任务完成前后台工作者执行后的功能
- shell - sed:通过模式 A 的最后一次匹配打印所有行,然后仅打印与模式 B 匹配的行
- ruby-on-rails - nil:NilClass 的未定义方法“model_name” - 尝试编辑帖子
- python-3.x - 文件中的python修剪选项卡