Click here to Skip to main content
12,951,548 members (50,630 online)
Rate this:
Please Sign up or sign in to vote.
See more:
Any sample code on how to update a contact in exchange ? I tried a sample code from the microsoft site but it doesn't show how to update the Business Address, Home & Other addresses, please note that i'm not using the EWS Managed API.
This is my code:

static void UpdateContact(ExchangeServiceBinding esb)
    // Create an object of update item type.
    UpdateItemType updateItemType = new UpdateItemType();
    updateItemType.ConflictResolution = ConflictResolutionType.AlwaysOverwrite;
    updateItemType.ItemChanges = new ItemChangeType[1];
    ItemChangeType changeType = new ItemChangeType();
    // Get the ID and change key from the contact item that you btained by using FindItem or CreateItem.
    ItemIdType contactId = new ItemIdType();
    contactId.Id = "AAAt=";
    contactId.ChangeKey = "EQAA";
    changeType.Item = contactId;
    changeType.Updates = new ItemChangeDescriptionType[1];
    // Create a set item field to identify the type of update.
    SetItemFieldType setItem = new SetItemFieldType();
    PathToIndexedFieldType indexedField = new PathToIndexedFieldType();
    // Update EmailAddress1 for the contact.
    indexedField.FieldIndex = "EmailAddress1";
    indexedField.FieldURI = DictionaryURIType.contactsEmailAddress;
    setItem.Item = indexedField;
    // Create a contact item to contain the update.
    ContactItemType contact = new ContactItemType();
    contact.EmailAddresses = new EmailAddressDictionaryEntryType[1];
    // Specify the e-mail address to be modified, and specify the new e-mail address.
    EmailAddressDictionaryEntryType emailAddress = new EmailAddressDictionaryEntryType();
    emailAddress.Key = EmailAddressKeyType.EmailAddress1;
    emailAddress.Value = "";
    contact.EmailAddresses[0] = emailAddress;
    setItem.Item1 = contact;
    changeType.Updates[0] = setItem;
    updateItemType.ItemChanges[0] = changeType;
    // Send the update item request and receive the response.
    UpdateItemResponseType updateItemResponse = esb.UpdateItem(updateItemType);
    // Access the response.
    if (updateItemResponse.ResponseMessages.Items.Length > 0 &&
        updateItemResponse.ResponseMessages.Items[0].ResponseClass == ResponseClassType.Success)
        ItemInfoResponseMessageType responseMessage = updateItemResponse.ResponseMessages.Items[0] as ItemInfoResponseMessageType;
        ContactItemType contactResponse = responseMessage.Items.Items[0] as ContactItemType;
        Console.WriteLine("Created Contact Item with Id {0} and ChangeKey {1}", contactResponse.ItemId.Id, contactResponse.ItemId.ChangeKey);

How can I programmatically update the contact addresses in exchange 2010?
Posted 25-Jun-12 2:09am
Updated 25-Jun-12 2:51am

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

    Print Answers RSS
Top Experts
Last 24hrsThis month
OriginalGriff 6,084
CHill60 3,480
Maciej Los 3,083
Jochen Arndt 1,975
ppolymorphe 1,830

Advertise | Privacy | Mobile
Web01 | 2.8.170525.1 | Last Updated 25 Jun 2012
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100