簡體   English   中英

sharepoint 2010創建文件夾沙箱

[英]sharepoint 2010 create folder sandbox

我正在使用sharepoint 2010沙箱解決方案,並在DocumentAdded事件的ListItemEveventReceiver中創建文檔庫文件夾或上載文檔。 但是,當我呼叫folder.Update()異常時,出現消息“沙盒代碼執行請求被拒絕,因為沙盒代碼宿主服務太忙而無法處理該請求”。 當我從事件處理程序中的庫中刪除項目時,就可以了。 我也嘗試創建代理操作( SPProxyOperation ),但出現了相同的結果。 我嘗試通過此帖子http://www.pdfsharepoint.com/error-sandboxed-too-busy-handle-request/進行修復。 這是代碼:

public override void ItemAdded(SPItemEventProperties properties) { base.ItemAdded(properties); var list = properties.List; if (list.Title.Equals("Learning Objects") && properties.ListItem.File != null) { _publisher.PublishFile(properties.ListItem.File, list); var fileName = properties.ListItem.File.Name; if (fileName.ToLower().Contains(".zip")) { var folder = list.Folders.Add(list.RootFolder.ServerRelativeUrl, SPFileSystemObjectType.Folder, fileName); folder.Update();

  //some code } } } 

謝謝,Yauheni

@Yauheni,您提供的鏈接為解決方案庫中激活解決方案時出現的問題提供了解決方案。 但是根據您的問題,您的代碼並非如此。

由於您提供的代碼段易於連續觸發“ ItemAdded”事件,因此您可以嘗試以下操作

public override void ItemAdded(SPItemEventProperties properties)
{ 
    base.ItemAdded(properties);
    EventFiringEnabled = false;

    // your code goes here

    EventFiringEnabled = true;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM