如何从用户警报中获取用户详细信息 [英] How to get user details from users alerts
问题描述
我创建了一个博客,并且来自org的用户都可以通过单击站点上的Alert Me功能来进行订阅.我想知道如何在csv或xsxl或记事本中进行报告.
我可以从站点设置>>中查看用户信息.网站管理下的用户警报.但我想将其作为报告.
我们是365的SharePoint Online
致谢
柴塔尼亚
Chaitanya,
对于SharePoint Online,我们可以使用CSOM C#获取所有用户警报.
使用Visual Studio创建控制台应用程序,然后在解决方案中安装Microsoft.SharePointOnline.CSOM.
https://www.nuget.org/packages/Microsoft.SharePointOnline.CSOM >
然后请参考下面的代码来实现它.
字符串targetSiteURL = @"https://xxx.sharepoint.com/sites/dennis"; var login ="dennis@xxx.onmicrosoft.com"; var password ="xxx"; var securePassword = new SecureString(); foreach(密码中的字符c) { securePassword.AppendChar(c); } SharePointOnlineCredentials onlineCredentials =新的SharePointOnlineCredentials(login,securePassword); ClientContext ctx = new ClientContext(targetSiteURL); ctx.Credentials = onlineCredentials; var users = ctx.Web.SiteUsers; ctx.Load(用户); ctx.ExecuteQuery(); var csv = new StringBuilder(); foreach(用户中的var用户) { var alerts = user.Alerts; ctx.Load(alerts); ctx.ExecuteQuery(); if(alerts.Count> 0) { csv.AppendLine(string.Format(显示{0}({1})的警报",user.Title,user.LoginName)); foreach(警报中的var警报) { csv.AppendLine(string.Format(频率:{0},传递方法:{1},AlertName:{2}",alert.AlertFrequency,alert.DeliveryChannels,alert.Title)); } } } System.IO.File.WriteAllText("C:\\ Alerts \\ alerts.csv",csv.ToString());
最好的问候,
丹尼斯
Hi,
I have created a blog and users from org are able to subscribe by clicking Alert Me feature on the site. I would like to know how to take report of it in either csv or xsxl or notepad.
I can see the users information from site settings >> user alerts under site administration. But i want to have it as a report.
Our is SharePoint Online of 365
regards
Chaitanya
Hi Chaitanya,
For SharePoint Online, we can use CSOM C# to get all the users alerts.
Create a console application using Visual Studio and install Microsoft.SharePointOnline.CSOM in your solution.
https://www.nuget.org/packages/Microsoft.SharePointOnline.CSOM
Then refer to the code below to achieve it.
string targetSiteURL = @"https://xxx.sharepoint.com/sites/dennis"; var login = "dennis@xxx.onmicrosoft.com"; var password = "xxx"; var securePassword = new SecureString(); foreach (char c in password) { securePassword.AppendChar(c); } SharePointOnlineCredentials onlineCredentials = new SharePointOnlineCredentials(login, securePassword); ClientContext ctx = new ClientContext(targetSiteURL); ctx.Credentials = onlineCredentials; var users = ctx.Web.SiteUsers; ctx.Load(users); ctx.ExecuteQuery(); var csv = new StringBuilder(); foreach (var user in users) { var alerts = user.Alerts; ctx.Load(alerts); ctx.ExecuteQuery(); if(alerts.Count>0) { csv.AppendLine(string.Format("Display alerts for {0}({1})", user.Title, user.LoginName)); foreach (var alert in alerts) { csv.AppendLine(string.Format("Frequency:{0}, Delivery Method(s):{1}, AlertName:{2}", alert.AlertFrequency, alert.DeliveryChannels, alert.Title)); } } } System.IO.File.WriteAllText("C:\\Alerts\\alerts.csv", csv.ToString());Best Regards,
Dennis
这篇关于如何从用户警报中获取用户详细信息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!