Příznaky
Došlo k pokusu o automatické generování kódu proxy na základě schématu Microsoft Exchange Server 2010 Service Pack 1 (SP1). V takovém případě chybí v kódu proxy následující řádek:
[System.Web.Services.Protocols.SoapHeaderAttribute("ExchangeImpersonation")]
Proto automaticky generované proxy nepodporují Exchange Impersonation.This problém ovlivňuje následující tři operace:
-
GetUserOofSettings
-
SetUserOofSettings
-
GetUserAvailability
Řešení
Chcete-li tento problém vyřešit, nainstalujte následující kumulativní aktualizaci:
2579150 Popis kumulativní aktualizace 4 pro Exchange Server 2010 Service Pack 1
Alternativní řešení
Chcete-li tento problém vyřešit, změnit vygenerované třídy ve schématu pomocí serveru Exchange Web Services (EWS) spravované API 1.1. Chcete-li to provést, přidejte následující řádek v kódu proxy:
[System.Web.Services.Protocols.SoapHeaderAttribute("ExchangeImpersonation")]
Zde je příklad pro GetUserOofSettings operace. Původní kód:
[System.Web.Services.Protocols.SoapHeaderAttribute("ServerVersionInfoValue", Direction = System.Web.Services.Protocols.SoapHeaderDirection.Out)][System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://schemas.microsoft.com/exchange/services/2006/messages/GetUserOofSettings", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Bare)][return: System.Xml.Serialization.XmlElementAttribute("GetUserOofSettingsResponse", Namespace = "http://schemas.microsoft.com/exchange/services/2006/messages")]public GetUserOofSettingsResponse GetUserOofSettings([System.Xml.Serialization.XmlElementAttribute(Namespace = "http://schemas.microsoft.com/exchange/services/2006/messages")] GetUserOofSettingsRequest GetUserOofSettingsRequest){ object[] results = this.Invoke("GetUserOofSettings", new object[] { GetUserOofSettingsRequest}); return ((GetUserOofSettingsResponse)(results[0]));}
Změněný kód:
[System.Web.Services.Protocols.SoapHeaderAttribute("ServerVersionInfoValue", Direction = System.Web.Services.Protocols.SoapHeaderDirection.Out)][System.Web.Services.Protocols.SoapHeaderAttribute("ExchangeImpersonation")][System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://schemas.microsoft.com/exchange/services/2006/messages/GetUserOofSettings", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Bare)][return: System.Xml.Serialization.XmlElementAttribute("GetUserOofSettingsResponse", Namespace = "http://schemas.microsoft.com/exchange/services/2006/messages")]public GetUserOofSettingsResponse GetUserOofSettings([System.Xml.Serialization.XmlElementAttribute(Namespace = "http://schemas.microsoft.com/exchange/services/2006/messages")] GetUserOofSettingsRequest GetUserOofSettingsRequest){ object[] results = this.Invoke("GetUserOofSettings", new object[] { GetUserOofSettingsRequest}); return ((GetUserOofSettingsResponse)(results[0]));}
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.
Další informace
Další informace o GetUserOofSettings operace navštivte následující web společnosti Microsoft:
Obecné informace o operaci GetUserOofSettingsDalší informace o SetUserOofSettings operace navštivte následující web společnosti Microsoft:
Obecné informace o operaci SetUserOofSettingsDalší informace o GetUserAvailability operace navštivte následující web společnosti Microsoft:
Obecné informace o operaci GetUserAvailabilityDalší informace o zosobnění serveru Exchange naleznete na následujícím webu společnosti Microsoft: