Getting "An item with the same key has already been added" exception when syncing the folder (Exchange Web Service)

Whenever I sync with Office 365 (using Exchange Web Service), I am getting the following error.

  • 1:32:07 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder list
  • 1:32:07 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/Inbox/
  • 1:32:07 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/Archive/
  • 1:32:08 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/PersonMetadata/
  • 1:32:08 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/ExternalContacts/
  • 1:32:08 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/Todo/
  • 1:32:08 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/Scheduled/
  • 1:32:08 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/Calendar/
  • 1:32:08 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ’ xxxxxx.com/Contacts/
  • 1:32:10 PM xxxxxx.com [Exchange Web Services]  MailClient.Accounts.ConnectionException: An item with the same key has already been added. —> System.ArgumentException: An item with the same key has already been added.
  • 1:32:10 PM    at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
  • 1:32:10 PM    at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
  • 1:32:10 PM    at MailClient.Storage.Application.Contact.ContactMemberCollection.Add(ContactMember member)
  • 1:32:10 PM    at MailClient.Storage.Application.Contact.ContactItem…ctor(IContact item, Object uniqueId, Object versionId)
  • 1:32:10 PM    at MailClient.Protocols.Exchange.ExchangeContactSynchronizer.d__7.MoveNext()
  • 1:32:10 PM    at System.Collections.Generic.List1.InsertRange(Int32 index, IEnumerable1 collection)
  • 1:32:10 PM    at MailClient.Protocols.Exchange.ExchangeItemSynchronizer`2.ConvertApplicationDataAndSkipUnparsable(ExchangeService service, Item item, CancellationToken cancellationToken)
  • 1:32:10 PM    at MailClient.Protocols.Exchange.ExchangeItemSynchronizer`2.d__18.MoveNext()
  • 1:32:10 PM    at System.Linq.Enumerable.d__20`3.MoveNext()
  • 1:32:10 PM    at MailClient.Protocols.Common.ItemSynchronizeContext2.StoreItems(SynchronizationType synchronizationType, IEnumerable1 newItems)
  • 1:32:10 PM    at MailClient.Protocols.Common.ItemSynchronizeContext2.Synchronize[T](SynchronizationType synchronizationType, IEnumerable1 items, Func2 getUniqueId, Func3 hasChanged, Func2 isDeleted, Func2 convertItems, Action`2 updateItem)
  • 1:32:10 PM    at MailClient.Protocols.Exchange.ExchangeItemSynchronizer2.Synchronize(IItemSynchronizeContext1 synchronizeContext, Folder folder, CancellationToken cancellationToken)
  • 1:32:10 PM    at MailClient.Protocols.Common.ItemSynchronizer`2.<>c__DisplayClass32_0.b__1(WorkerStatus status, CancellationToken cancellationToken)
  • 1:32:10 PM    at MailClient.Protocols.Exchange.ExchangeGenericCommand.Execute(WorkerStatus status)
  • 1:32:10 PM    — End of inner exception stack trace —
  • 1:32:10 PM    at MailClient.Protocols.Exchange.ExchangeGenericCommand.Execute(WorkerStatus status)
  • 1:32:10 PM    at MailClient.Commands.Command.Process(WorkerStatus status)
  • 1:32:11 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/Contacts/
  • 1:33:11 PM xxxxxx.com [Exchange Web Services]  Synchronizing folder ‘xxxxxx.com/Contacts/

Please help me how to avoid this operation error.

Thanks