If you need to create a diff patch between two .Net objects of the same type you can check out my object-diff-dotnet repo on github.

Useful for cases such as:

  • Retrieving user changes to a settings object and saving them to apply to another settings object.
  • Pushing a default product catalog to an application that a user/admin can change details for, saving those changes, and then applying them when a new catalog is pushed from a server.
  • Comparing two objects for equality across all properties - e.g. the patch is empty.
  • Synchronizing object values across the network by just sending a diff patch rather than entire objects.