Web services 尝试使用ClientService.asmx检索TFS工作项

Web services 尝试使用ClientService.asmx检索TFS工作项,web-services,soap,Web Services,Soap,我正在尝试使用JavaScript使用ClientService.asmx检索TFS工作项,并且我能够访问Web服务,但是当使用SOAP时,会出现以下错误“TF51612:查询不包含任何组或表达式”。 参数名称:queryXml“ 下面是我用来访问工作项的代码: <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc

我正在尝试使用JavaScript使用ClientService.asmx检索TFS工作项,并且我能够访问Web服务,但是当使用SOAP时,会出现以下错误“TF51612:查询不包含任何组或表达式”。 参数名称:queryXml“

下面是我用来访问工作项的代码:

  <?xml version="1.0" encoding="utf-8"?>
  <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
  <RequestHeader xmlns="http://schemas.microsoft.com/TeamFoundation/2005/06/WorkItemTracking/ClientServices/03">
  <Id></Id>
  </RequestHeader>
  </soap:Header>
  <soap:Body>
  <QueryWorkitems xmlns="http://schemas.microsoft.com/TeamFoundation/2005/06/WorkItemTracking/ClientServices/03">
  <psQuery>
  <queryXml>
  <Wiql>SELECT [System.Id], [System.WorkItemType], [System.Title], [System.AssignedTo], [System.State] FROM WorkItems WHERE [System.TeamProject] = @project  AND  [System.WorkItemType] &lt;&gt; ''  AND  [System.State] &lt;&gt; '' ORDER BY [System.Id] </Wiql>
  </queryXml>
  </psQuery>
  </QueryWorkitems>
  </soap:Body>
  </soap:Envelope>

从工作项中选择[System.Id]、[System.WorkItemType]、[System.Title]、[System.AssignedTo]、[System.State],其中[System.TeamProject]=@project AND[System.WorkItemType]“”和[System.State]“”按[System.Id]排序
请让我知道我做错了什么。
谢谢

您的标题SOAP必须包含有关您的凭据的信息,因为您的查询标题为空,因此您没有经过身份验证


在您的Web服务中添加Soap扩展名,在配置文件中注册。在经历了许多痛苦之后,我终于想出了如何对该服务执行正确的请求。这是我的全部要求。请原谅我的安排。我显然太笨了,不知道如何做一个合适的列表

几张纸条

*RequestHeader Id字段的格式必须为uuid:GUID

*psQuery元素实际上并不像其他web源所暗示的那样位于Wiql中。(即您正在接收错误)

*数字字段的字段类型为288

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://schemas.microsoft.com/TeamFoundation/2005/06/WorkItemTracking/ClientServices/03">
<soapenv:Header>
<ns:RequestHeader>
<!--Optional:-->
<ns:Id>uuid:262c6910-8394-11e3-baa7-0800200c9a67</ns:Id>
</ns:RequestHeader>
</soapenv:Header>
<soapenv:Body>
<ns:QueryWorkitems>
<!--Optional:-->
<ns:psQuery>
<Group GroupOperator="And">
<Expression Column="System.TeamProject" FieldType="16" Operator="equals"><String>ProjectName</String></Expression>
<Expression Column="System.AssignedTo" FieldType="16" Operator="equals"><String>Daniel West</String></Expression>
<Expression Column="System.WorkItemType" FieldType="16" Operator="equals"><String>Anomaly</String></Expression>
<Expression Column="System.State" FieldType="16" Operator="equals"><String>Validate</String></Expression>   
</Group>
</ns:psQuery>
<ns:sort>
<!--Zero or more repetitions:-->
<ns:QuerySortOrderEntry>
<!--Optional:-->
<ns:ColumnName>System.AssignedTo</ns:ColumnName>
<ns:Ascending>1</ns:Ascending>
</ns:QuerySortOrderEntry>
</ns:sort>
<ns:useMaster>1</ns:useMaster>
</ns:QueryWorkitems>
</soapenv:Body>
</soapenv:Envelope>

uuid:262c6910-8394-11e3-baa7-0800200c9a67
项目名称
丹尼尔·韦斯特
异常
验证
分配给
1.
1.

SOAP正在运行时获得身份验证,我得到的错误是查询参数。