Jan 17, 2011 at 11:22 AM
Edited Jan 17, 2011 at 11:25 AM
Recommendations for problem 3:
Well I guess we have two options:
1- Design a masterpage explicitly for the blog which looks the same as your site's masterpage. This approach has some cons. e.g. you have to rewrite you master page's code in your blog. making maintenance harder.
Or maybe you have some custom controls in your master page which are not accessible in your blog.
2- Add a class library which contains the masterpage(s) + controls that are shared between your blog and site. I've got the idea from Dave Burke's excellent
Sueetie CMS. For example let's call this class library SiteCore.
you have to define a masterpage like:
public class SiteMasterPage : System.Web.UI.MasterPage
Then add a reference to this project from BE. And change site.master.cs to inherit from it:
public partial class StandardSite : SiteCore.SiteMasterPage
Add another reference to this library fro your root and you can access this master page in your site as well.
Also, Add any shared control to the class library. For example navigation menu:
public class NavigationMenu: System.Web.UI.UserControl
And handle the html generation of the control from there. Note that you can put control in a separate class library for better separation if you're going to build a more complex solution.