我最近收到要求某人接收关于 SharePoint 网站内任何更改的每日摘要警报;每个站点都有一个负责其站点内容的所有者。
我们目前的工作方式是为站点内的每个列表/库自动设置警报。
// Get the Lists on this Site
SPListCollection siteLists = currentSite.Lists;
foreach (SPList list in siteLists)
{
if (!list.ToString().Equals("Master Page Gallery"))
{
if (list.ReadSecurity == 1) // user has read access to all items
{
// Create an Alert for this List
Guid alertID = currentUser.Alerts.Add(list, SPEventType.All, SPAlertFrequency.Daily);
// Set any additional properties
SPAlert newAlert = currentUser.Alerts[alertID];
}
}
}
这会产生两个问题:
- 用户创建了许多不同的警报。理想:只有一封包含每日摘要的电子邮件。
- 必须设置某种监视器来检查站点中的新列表或库,并自动为用户设置警报。
问:如何为站点中的所有更改创建每日摘要警报?