前言git
最近碰到这样一个需求,用户须要个简单的定时邮件提醒,就是抓取SharePoint某个列表里的值,而后做为邮件地址/邮件主题/邮件内容发送出去。github
本身想了想,既然用户要求天天定时发送,那么确定是任务计划,这样使用PowerShell是最方便不过的。web
正文服务器
SharePoint 发送邮件的方法很简单,就是利用自带的SendEmail()方法就能够了,这里,咱们用PowerShell调用Net方法SendEmail()来发送邮件。spa
首先就是邮件头部信息,包括邮件地址 主题和内容,以下:code
//这是个人网易邮箱,有SharePoint项目或者机会,都欢迎联系我,哈哈
$email = "linyu_s@163.com" $subject = "XXX Application Approval Notification" $body = "balabalabala...."
而后,就是打开SharePoint站点:orm
$site = New-Object Microsoft.SharePoint.SPSite "http://workflow-platform/sites/xxx" $web = $site.OpenWeb()
最后,就是去发送邮件了:对象
[Microsoft.SharePoint.Utilities.SPUtility]::SendEmail($web,0,0,$email,$subject,$body)
结束语blog
这就是利用SharePoint服务器端对象里Microsoft.SharePoint.Utilities.SPUtility 中的SendEmail() 去发送邮件,固然,咱们还能够借助相似方法,调用SharePoint 中其余的对象模型,你们就能够发挥本身的想象了。workflow
功能实现起来,是否是很简单,studio甚至都不用打开visual studio就能够完成了,这就是SharePoint 做为产品的便利。
更多经常使用PowerShell脚本,请关注https://github.com/linyus