Operações de "GetUserOofSettings", "SetUserOofSettings" e "GetUserAvailability" não suportam a representação do Exchange no Exchange Server 2010 SP1 esquema

Sintomas

Tentar gerar automaticamente o código de proxy baseado no esquema do Microsoft Exchange Server 2010 Service Pack 1 (SP1). Nesta situação, a linha seguinte está em falta no código de proxy:

[System.Web.Services.Protocols.SoapHeaderAttribute("ExchangeImpersonation")] 

Por conseguinte, os proxies gerado automaticamente não suportam Exchange Impersonation.This problema afecta as seguintes três operações:

  • GetUserOofSettings

  • SetUserOofSettings

  • GetUserAvailability

Resolução

Para resolver este problema, instale o update rollup seguinte:

Descrição de Update Rollup 4 para Exchange Server 2010 Service Pack 1

Solução

Para contornar este problema, utilize o Microsoft Exchange Web Services (EWS) API geridos 1.1 para alterar as classes no esquema geradas. Para tal, adicione a seguinte linha no código de proxy:

[System.Web.Services.Protocols.SoapHeaderAttribute("ExchangeImpersonation")] 

Segue-se uma amostra para a operação GetUserOofSettings . Código original:

[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]));}

Código alterado:

[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]));}

Estado

A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".

Mais Informações

Para mais informações sobre a operação de GetUserOofSettings , visite o seguinte Web site da Microsoft:

Para mais informações sobre a operação de SetUserOofSettings , visite o seguinte Web site da Microsoft:

Para mais informações sobre a operação de GetUserAvailability , visite o seguinte Web site da Microsoft:

Para mais informações sobre a representação do Exchange, visite o seguinte Web site da Microsoft:

Precisa de mais ajuda?

Aumente os seus conhecimentos
Explore as formações
Seja o primeiro a obter novas funcionalidades
Aderir ao Microsoft insiders

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×