出于某种原因,当我尝试按任何不是"total_est_hrs"
, 或的字段进行排序时"id"
,我得到一个空引用异常。这是我用来获取查询的代码:
Session cqSession = new Session();
cqSession.UserLogon("user", "password", "db", 2, "set");
IOAdQueryDef queryDef = (cqSession.BuildQuery("Defect"));
queryDef.BuildField("id");
queryDef.BuildField("total_est_hrs");
queryDef.BuildField("severity");
IOAdQueryFieldDefs fieldDefs = queryDef.QueryFieldDefs;
IOAdQueryFieldDef sortField = fieldDefs.item("severity");
sortField.SortType = 1;
sortField.SortOrder = 1;
IOAdQueryFilterNode rootNode = queryDef.BuildFilterOperator(AND);
rootNode.BuildFilter("submit_date", GREATER_THAN, "1/1/2014");
OAdResultset rs = (cqSession.BuildResultSet(queryDef));
rs.ExecuteAndCountRecords();
错误说在第 9 行有一个空引用异常,我试图在其中设置SortType
. GREATER_THAN
和常量指的AND
是在 ClearQuest Api 参考中找到的排序和比较常量。
如果有人可以解释发生了什么,那就太好了。