To Synchronize or To Refresh?

Are you confused too?

Are you wondering what the difference is between the "Refresh" button in "Solution Explorer" and the "Synchronize" button in "Schema View"? Both buttons share the same icon; but they are named differently; are both option doing the same or different things?

So what is the difference?










Schema View - Synchronize

The "synchronize" button, redraws the schema view, which is the logical schema view based on the in-memory schema representation of the sources interpreted; so synchronize refers to synchronization of state between the Solution Explorer and Schema View.

Solution Explorer - Refresh

The "refresh" button, most likely should have been named "reload" since it will remove the schema cache file (<project dir>\<project name>.dat>; recreate the design verification database and reload all the schema fragments from the project (<project name>.dbproj) file.

So "refresh" (or better reload) can be a rather expensive operation; since it will cause a complete reload of all schema objects (reading all files from links from the project file); parse the fragments and execute them against the design validation database.

I hope this explains the difference and when to use them,