如何解决如何使用CSOM禁用SharePoint 2013警报
使用CSOM,我可以检索SharePoint Online网站的警报集合,并使用以下代码禁用每个警报:
context.Load(context.Web.Alerts,collection => collection.Include(
alert => alert.ID,alert => alert.Status));
context.ExecuteQueryWithRetry();
foreach (SP.Alert alert in context.Web.Alerts)
{
if (alert.Status == AlertStatus.On)
{
context.Load(alert);
alert.Status = AlertStatus.Off;
alert.UpdateAlert();
}
}
context.ExecuteQueryWithRetry();
但这不适用于SharePoint 2013。我收到错误:“字段或属性'Alerts'不存在”。能用CSOM做到吗?
解决方法
与How to disable SharePoint 2013 alerts using CSOM相同的问题
SharePoint 2013内部部署CSOM Web对象不支持Alerts属性。
请改用以下SharePoint Server对象模型:
using (SPSite site=new SPSite("http://sp/sites/MyDev"))
{
SPWeb web = site.OpenWeb();
SPAlertCollection alerts = web.Alerts;
foreach (SPAlert alert in alerts)
{
alert.Status = SPAlertStatus.Off;
alert.Update();
web.Update();
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。