我最近使用Visual Studio 2013将自定义WebPart模板解决方案(wsp)从SP2010迁移到SP2013。将程序集版本设置为15并通过.Net Framework 4.5进行编译。 deploymnet成功了。但是有两个问题:
1.当我使用刚部署的自定义模板创建网站时,页面显示杂乱的图标,附加屏幕截图。此外,当尝试向网站添加权限时,网站的权限页面上会出现一大堆色彩缤纷的图标。
2.另一个问题是,某些CSS,特别是ms-WPxxxxxxxx(如WPTitle,WPHeader等)正在继承,可能来自corev4.css。这就是View Source所显示的内容。自定义CSS在主页面(CustomDefault.aspx)中使用“!important”标签定义,但似乎没有任何用处。
同样的解决方案在SP2010上完美运作。
怀疑主要是(1)与(2)有关,我可能是错的。
要解决(1),正如来自MSDN社区论坛的SP人员所建议的,我将默认母版页更改为Oslo.master ==>这清除了混乱的图标,但CSS和Javascripts不起作用。所以我不得不回复。 我也试过改变" ../_ layouts /.." to" ../_ layouts / 15 /.." ;,这没有任何区别。
任何帮助将不胜感激。
答案 0 :(得分:0)
经过长时间的战斗,我终于解决了这个问题。发现SiteDefinition模块中的“onet.xml”指的是SharePoint 2010母版页,v4.master。由于这是另一个项目,我不知道该文件将引用SP2010资源。许多博客建议只将资源路径更改为'/ _layouts /'到'/ _layouts / 15 /'和'/ ControlTemplate /'更改为'/ ControlTemplate / 15 /',但没有看到有人提到母版页更改。对于完全开箱即用的解决方案可能不是这种情况。因此,在项目解决方案中搜索“v4.master”(SP2010),如果找到,则将其更改为您的自定义母版页(如果有)或默认母版页。但是,如果您使用了专门用于SP2010或旧版SharePoint的任何其他母版页或自定义母版页,则必须选择等效版或自定义它以使其与SP2013兼容。
所以这里的代码片段已被更改并且摆脱了混乱的图标,希望它可以帮助那些人。
<!-- <Configuration ID="-1" Name="NewWeb" MasterUrl="_catalogs/masterpage/**v4.master**" />
<Configuration ID="0" Name="Default" MasterUrl="_catalogs/masterpage/**v4.master**">
<Configuration ID="1" Name="Blank" MasterUrl="_catalogs/masterpage/**v4.master**">
<Configuration ID="2" Name="DWS" MasterUrl="_catalogs/masterpage/**v4.master**"> -->
<Configuration ID="1" Name="NewWeb" MasterUrl="~masterurl/**default.master**" />
<Configuration ID="0" Name="Default" MasterUrl="~masterurl/*default.master*">
<Configuration ID="1" Name="Blank" MasterUrl="~masterurl/**default.master**">
<Configuration ID="2" Name="DWS" MasterUrl="~masterurl/**default.master**">