2009-10-14 77 views
0

我想以編程方式將警報添加到SharePoint列表中的文件夾。我已經找到了如何將警報設置爲列表,並且這是完美的。列表文件夾上的Sharepoint警報

是否有人可以幫助我如何設置警報到列表中的特定文件夾。

以下是我目前擁有的代碼,只將警報設置爲列表。

using (SPSite site = new SPSite("http://site/")) 
{ 
using (SPWeb web = site.OpenWeb()) 
{ 
    SPUser user = web.SiteUsers["domain\\user"]; 
SPAlert newAlert = user.Alerts.Add(); 
newAlert.AlertType = SPAlertType.List; 
newAlert.List = web.Lists["Documents"]; 
newAlert.EventType = SPEventType.All; 
newAlert.AlertFrequency = SPAlertFrequency.Immediate; 
//passing true to Update method will send alert confirmation mail 
newAlert.Update(true); 
} 
} 

您的幫助將非常感激

這個問題解決了!請參考下面我的職務與鏈接 - 見 - LINK

回答

0

這是不可能的開箱即用,但谷歌上搜索,我發現了一個有趣的可能性,雖然以後,退房時間邁克·沃爾什的回答上this post,它需要建立在一個視圖文件夾,然後將警報附加到該視圖。

0

您需要

newAlert.List = web.Lists["Documents"]; 

更新符合

SPFolder fldr = web.GetFolder("/ListName/FolderName"); 
newAlert.Item=fldr.Item; 

還要注意,文件夾也是另一個項目。

+1

嗨Kusek非常漂亮的回答謝謝你的答案。我嘗試了你提到的,但它是拋出一個錯誤: Microsoft.SharePoint.SPException:指定的對象不屬於列表 。 在Microsoft.SharePoint.SPWeb.GetItem(字符串strUrl,布爾BFILE,布爾Ç acheRowsetAndId) 在Microsoft.SharePoint.SPFolder.get_Item() 在Alerts_Programatically.Program.Main(字串[] args)在C:\的Inetpub \ wwwroot \ ........ \ Program.cs:line 23 您的幫助將非常令人高興!謝謝你 – 2009-10-14 10:55:47

+0

我試圖修復並設法擺脫上面的錯誤,但現在得到這一個:任何想法請嗎? Microsoft.SharePoint.SPException:無法爲此類警報設置Item屬性。 at C:\ Inetpub \ wwwroot \ ...... \ Program.cs中的Alerts_Programatically.Program.Main(String [] args)的Microsoft.SharePoint.SPAlert.set_Item(SPListItem值) :line 23 – 2009-10-14 11:47:40