2009-01-28 53 views
1

我有一些在SharePoint中创建新网站的代码。浏览到新创建的网站后,会出现文件未找到错误。如果您浏览到/_layouts/ChangeSiteMasterPage.aspx,您可以选择一个新的站点主站&系统母版页,并且该站点工作正常。这个kb的文章完美地描述了我的症状:http://support.microsoft.com/kb/936908如何强制新的网站集继承母版页?

我的问题是两个(也许三个?)解决方案给出,只有一个工程。如果我手动选择新的母版页,它工作正常。第二个解决方法是激活新网站上的发布功能。这不能解决任何问题。

还有一个建议,将发布功能装订到我用于新网站的网站定义中。就我而言,这是STS#1(空白网站),装订发布功能并不能缓解我的问题。

任何人都有一个想法,我如何才能得到正确的母版页排序?

回答

0

原来我只是需要改变所产生的一个网站主模板,然后将它保存为模板。我删除了损坏的模板,并将其放在原处。现在所有生成的网站都能正常工作。

2

我们通过委托控制来完成此操作。在onload我们调用下面的方法:

private void ConfigureMasterPage(SPWeb web) 
{ 
     string masterURL = string.Empty; 
     masterURL = web.Site.ServerRelativeUrl + "/_catalogs/masterpage/XXX.master"; 
     masterURL = masterURL.Replace("//", "/"); 
     web.MasterUrl = masterURL; 
     web.CustomMasterUrl = masterURL; 
     web.Update(); 
} 

不要忘记做的SPSite和的SPWeb对象的处置,你将不得不AllowUnsafeUpdates设置为true。

希望这有助于

相关问题