在多个环境中将Web部分添加到现有页面中的最佳方法
-
16-10-2019 - |
题
如果您在每个环境中都有一个现有页面,例如default.aspx,并想添加一个Web零件并促进每个环境,那么最佳方法是什么?
- 使用功能接收器创建WSP,并通过激活添加到页面
- 创建具有功能的WSP并与AlluserWebParts添加模块(虽然需要使用它部署ASPX页面)
- 手动导出和导入网络部分
- 使用SplimitedWebPartManager的PowerShell脚本
- 其他…
解决方案
您可能会在此处找到SP2010客户对象模型有用。将Web零件导出到Web部件控制说明文件(.dwp或.webpart),然后将其翻转为这样:
using (ClientContext context = new ClientContext("http://server")) {
Web web = context.Web;
File file = web.GetFileByServerRelativeUrl("/SitePages/Default.aspx");
LimitedWebPartManager wpMgr = file.GetLimitedWebPartManager(
PersonalizationScope.Shared);
WebPartDefinition webPartDef = wpMgr.ImportWebPart(
System.IO.File.ReadAllText("Content_Editor.dwp"));
wpMgr.AddWebPart(webPartDef.WebPart, "Left", 1);
context.ExecuteQuery();
}
其他提示
在“其他”类别中,只需将代码从一个环境中的页面复制并粘贴到SharePoint Designer中的另一个环境中。这完全取决于业务需求,不是吗?