I had this big problem.

Now, I've refactored my code to have a data layer, business layer and the main project as the view layer. Next I'd like to split this big project smaller projects based on discrete functionality.

As I understand it, one way to handle a shared masterpage is to copy it into each project, that's not the worst thing, it hasn't changed in over a year and if it does it's easy enough to propagate the changes out to the other projects.

I was also reading that I could create an assembly from my master page and share it that way.

My masterpage.aspx has a reference to a sitemap, Unlike the masterpage I'd like to maintain only one site map if possible. Does anyone have a good suggestion?

Thanks Jim

EDIT: I did exactly this, thanks for the push in the right direction.

+1  A: 

Give this a try:

In Visual Studio choose the project that you want to keep your sitemap file in then in the other projects add an exisiting item and select your sitemap file. On the 'Add' button of the 'Add Exising Item' dialog click the down arrow and select 'Add As Link'. This should work with a master page as well. Then you will only have one file to maintain.

+1  A: 

You could implement a CustomSiteMapProvider and store the sitemap in the database, this way the common sitemap items will be an SQL Script?

Mark Redman