SharePoint發(fā)行版本有SharePoint2003、SharePoint2007、Sharepoint 2010、SharePoint2013和SharePoint2016。SharePoint提供了功能強(qiáng)大的團(tuán)隊(duì)協(xié)作環(huán)境,使得組織能夠在整個(gè)組織內(nèi)部實(shí)現(xiàn)整合、組織、查找和提供 SharePoint站點(diǎn)。 當(dāng)我們?cè)谑褂肁pp的時(shí)候,就會(huì)發(fā)現(xiàn)一些問題,比如那些網(wǎng)站部署、更新或者卸載了,我們很關(guān)心我們的App是否有人用,這就需要遠(yuǎn)程事件接收器了。 1、在我們的測(cè)試App的解決方案上選中鼠標(biāo),按F4彈出屬性,選中我們需要的處理應(yīng)用程序,選中True;同時(shí),VS會(huì)自動(dòng)創(chuàng)建一個(gè)解決方案,讓我們?cè)诶锩鎸戇h(yuǎn)程事件接收器的相關(guān)代碼。 2、在創(chuàng)建的遠(yuǎn)程事件接收器的解決方案中,打開svc的代碼,然后添加我們的代碼(附后),判斷如果觸發(fā)的是安裝App的事件,在一個(gè)AppInstallLog的列表中插入一條安裝記錄。 3、附后的代碼,代碼很簡單,提升權(quán)限寫列表庫,就不多說了;寫完代碼以后,將這個(gè)web站點(diǎn)發(fā)布到服務(wù)器的IIS目錄下; if (properties.EventType == SPRemoteEventType.AppInstalled){ SPSecurity.RunWithElevatedPrivileges(delegate() { using (SPSite site = new SPSite("http://url:2014")) { using (SPWeb web = site.OpenWeb()) { SPList list = web.Lists["AppInstallLogs"]; SPListItem item = list.Items.Add(); item["標(biāo)題"] = "SP2013PictureWallApp"; item["日志"] = "SP2013PictureWallApp于 " + DateTime.Now.ToString() + " 已經(jīng)被安裝!"; item.Update(); } } });} 4、在App的解決方案中,找到AppManifest.xml文件,右鍵查看代碼,修改InstalledEventEndpoint為我們之前發(fā)布的站點(diǎn)中svc文件目錄; 5、我們?cè)谝粋(gè)站點(diǎn)中添加我們的App,而后查看AppInstallLogs列表庫,發(fā)現(xiàn)已經(jīng)寫入一條安裝日志了,說明遠(yuǎn)程事件接收器開發(fā)部署成功! 結(jié)束語 以上介紹的是App安裝過程中,觸發(fā)事件寫入安裝日志的過程,其實(shí),遠(yuǎn)程事件接收器還可以完成更加豐富的工作,比如像SharePoint解決方案中的事件觸發(fā)器,為App中的列表或者文檔庫添加事件,這就需要我們創(chuàng)建Remote Event Receiver解決方案了。 Sharepoint 可以幫助企業(yè)用戶輕松完成日常工作。 |
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!