почему ключевое слово содержит не работает на запрос ралли API - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь запросить Rally API, используя ниже

req.Query = new Query("User.ObjectID", Query.Operator.Equals, loggedinUser.ToString()).And(new Query("Role", Query.Operator.Contains, Role).And(new Query("Workspace.ObjectID", Query.Operator.Contains, workspaceID)).And(new Query("Project.ObjectID", Query.Operator.Equals, projectObjectID)));

Но выдает ошибку, так как

The operator [ contains ] is not supported for this attribute type. The available operators are [ =, !=, >, <, >=, <=, in ]

содержит ключевое слово устарела?Пожалуйста, помогите мне альтернативу в таком случае.

Ответы [ 2 ]

0 голосов
/ 18 октября 2018

Согласно https://communities.ca.com/thread/241816885-why-contains-keyword-is-not-working-on-rally-api-query?et=watches.email.outcome

больше не поддерживает такие запросы, но ранее он работал.

Работает, когда я заменил «Contains» на «Equals» на * 1006.*

 req.Query = new Query("User.ObjectID", Query.Operator.Equals, loggedinUser.ToString()).And(new Query("Role", Query.Operator.Equals, Role).And(new Query("Workspace.ObjectID", Query.Operator.Equals, workspaceID)).And(new Query("Project.ObjectID", Query.Operator.Equals, projectObjectID)));
0 голосов
/ 17 октября 2018

Нельзя использовать contains для идентификатора объекта - этот атрибут является числовым.contains зарезервировано для строк и коллекций.

Именно Workspace.ObjectID разрушает ваш день.Измените его на equals, и все будет хорошо.

...