根据这个:
http://msdn.microsoft.com/en-us/library/dd633705(v=exchg.80).aspx
在每个EWS响应中,生成响应的Exchange版本由ServerVersionInfo元素指示。以下示例显示了一个ServerVersionInfo元素,该元素表示来自Exchange 2010 SP1的响应。
该页面上的示例包含:
Version =“Exchange2010_SP1”
我目前正在使用Exchange Online帐户,我在EWS服务器响应中看到的值是:
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<h:ServerVersionInfo [xmlns' snipped]
MajorVersion="15" MinorVersion="0" MajorBuildNumber="800" MinorBuildNumber="16"
Version="V2_6"/>
</s:Header>
所以它的版本=“V2_6”,我在EWS参考资料中找不到。
1 - 这是Exchange Online的预期结果吗?那么Office 365帐户呢?
2 - V2_6在哪里符合以下序列:Exchange2007,Exchange2007_SP1,Exchange2010,.... Exchange2013?
换句话说,当我在服务器响应中看到Version =“V2_6”时,我可以在我的请求'&lt; RequestServerVersion&gt;中使用什么模式版本?
答案 0 :(得分:0)
我有the same issue with a V2_22
version number being returned。
引用my question at the Exchange Server development forum的答案:
“Exchange 365 for Exchange 365 [ed: Exchange Online ]有自己的生命(自定义版本),因此除了主要版本之外,它不会遵循Exchange 2013版本。”
在向Office 365 EWS API发出请求时,您可以使用Exchange2013
RequestServerVersion。如果你不想这样做:
FreeRangeEggs在他的回答(这里)中建议依赖MajorVersion,但Glen Scales(那里)的答案说使用AutoDiscovery来检测支持哪些模式。
答案 1 :(得分:-1)
看起来Version="Exchange2010_SP1"
仅用于发送请求,而不是响应的一部分。
<soap:Header>
<t:RequestServerVersion Version="Exchange2013" />
</soap:Header>
请求版本与响应版本不匹配,并包含在不同的标记中。
<h:ServerVersionInfo MajorVersion="15"
MinorVersion="0"
MajorBuildNumber="785"
MinorBuildNumber="6"
Version="V2_6"
xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
我打算建议您使用MajorVersion
,但这只是从2010年开始提供。