在基本团队网站模板的主页上,我有一个日历 web 部件,默认情况下它的视图基于日历列表日历视图。我的问题是,在日历列表上应用新的日历覆盖后,主页视图不会自动更新以反映此更改。我必须改为编辑 web 部件,选择日历视图(这是当前默认使用的)并应用该更改。我试图在没有运气的情况下在 powershell 中完成这项任务。
我试图使用的代码是:
$web = get-spweb "http://portal/site/testsite1"
$file = $web.getfile("default.aspx")
$manager = $file.getlimitedwebpartmanager([System.web.ui.webcontrols.webparts.personalizationscope]::shared)
$manager.webparts | format-list title, ID
$wp = $manager.webparts["GUID_HERE"]
$doclib = $web.lists["Calendar"]
$view = $doclib.Views["Calendar"]
$wp.ViewGuid = $view.ID.ToString("B").ToUpper()
$manager.SaveChanges($wp)
不幸的是,这在更新视图以反映日历视图中应用的当前覆盖方面没有效果,因此只有手动干预起作用。是否有一些我可以用来完成此任务的 powershell 代码?