none
Exchange 2007 SP1 : Get UID for Calendar Entry RRS feed

  • Question

  • Hello,

    I am using C# and Exchange 2007 SP1.

    I need to create a meeting request for X number of users.  This seems to go OK.  However, we would like to relate the calendar entry for this collection group of users to particular data.  Now after I create the appointment I would like to retrieve the UID for the calendar.  We have installed Exchange 2007 SP1 since, apparently, this is required in order to get the UID.

    But I cannot seem to retrieve the UID.  Can someone please provide me with sample code on how to get this UID?

    Regards,
    Eben
    Friday, February 20, 2009 5:07 AM

Answers

  • Uid should be included in the AllProperties shape for calendar items and meeting messages, but it will only show up for SP1 requests. In order to be considered an SP1 request,  the request server version must be set to "Exchange2007_SP1" in the SOAP header. 

    Here's a C# example of how to version a request for Exchange 2007 SP1:

    ExchangeServiceBinding esb = new ExchangeServiceBinding();
    esb.RequestServerVersionValue = new RequestServerVersion();
    esb.RequestServerVersionValue.Version = ExchangeVersionType.Exchange2007_SP1;

    And the SOAP header that represents an Exchange 2007 SP1 request:

    <soap:Header>
      <t:RequestServerVersion Version="Exchange2007_SP1"/>
    </soap:Header>

    Perhaps you're not seeing UID in the response because you're not setting the request server version in the SOAP header?
    Programming Writer, Microsoft Exchange Developer Documentation Team
    • Marked as answer by Eben Roux Monday, February 23, 2009 7:41 AM
    Friday, February 20, 2009 6:13 PM

All replies

  • Uid should be included in the AllProperties shape for calendar items and meeting messages, but it will only show up for SP1 requests. In order to be considered an SP1 request,  the request server version must be set to "Exchange2007_SP1" in the SOAP header. 

    Here's a C# example of how to version a request for Exchange 2007 SP1:

    ExchangeServiceBinding esb = new ExchangeServiceBinding();
    esb.RequestServerVersionValue = new RequestServerVersion();
    esb.RequestServerVersionValue.Version = ExchangeVersionType.Exchange2007_SP1;

    And the SOAP header that represents an Exchange 2007 SP1 request:

    <soap:Header>
      <t:RequestServerVersion Version="Exchange2007_SP1"/>
    </soap:Header>

    Perhaps you're not seeing UID in the response because you're not setting the request server version in the SOAP header?
    Programming Writer, Microsoft Exchange Developer Documentation Team
    • Marked as answer by Eben Roux Monday, February 23, 2009 7:41 AM
    Friday, February 20, 2009 6:13 PM
  • Hi friends

    According to me you should read the wrox book. I hope you will find your answer.

    Joseph

    Saturday, February 21, 2009 11:52 AM
  • Hi Kim,

    That did the trick thanks.

    Eben
    Monday, February 23, 2009 7:41 AM