I've figured out how to use the ObjectStateManager and ObjectStateEntries to determine original values of scalar properties for a given entity.
What I need to know now is how to do the same for navigation properties. The GetModifiedProperties method on ObjectStateEntry doesn't return navigation properties.
Any ideas?