Question

We have an in-house app that uses the http://schemas.microsoft.com/exchange/permanenturl property to identify calendar appointments in 2003. Now we're getting ready to migrate to 2010, and our understanding is that the permanent urls are formed differently for calendar items, and that permanenturls from 2003 can't be upgraded directly to 2010. Someone has even suggested that the new API doesn't expose the permanenturl So, I have a few questions.

First, are we right? Can the permanenturl property not be upgraded to 2010 from 2003? If it can, is there an algorithm that allows us to predict or produce the new url? We're going to need them both on hand through the transition.

Second, I know that from 2007 and up that we can create custom extended properties that we can make persistent. I'm having trouble figuring out if we can create custom extended properties in 2003 a) at all, and b) that will persist in the migration.

I'm a total noob at Exchange programming, so I'm not even sure where to start on the code. Any pointers in the right direction would be greatly appreciated!

Thanks!

Was it helpful?

Solution

After some research and experimentation, we determined that the permanenturl doesn't persist, but that the GUID for Calendar items should be fairly reliable. The GUIDs for Items in Exchange appear to include a hash of the entry point, so moving messages between folders can change their GUID. Since calendar items stay in the same folder, the GUID shouldn't change. So we're going to use that as our new index.

There was still the matter of updating the old index. We decided to take the following course:

  • Copy the permanentURL value to the body of the message (actually, we're hashing a few things together)
  • Migrate the mailbox
  • Find the permanentURLs in the message bodies, get the new GUID, and update our table
  • Use the 2010 GUIDs going forward

This was my first time working with Exchange, and I have to say that I'm a fan of EWS. It makes things so much simpler.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top