2012-04-30 67 views
1

在SharePoint Server 2010中我有一个文档库,我想创建一个文件夹创建子文件夹,我有一个代码段,但它不是工作时,我试图调试,而且该事件不触发,可以在任何一个可以帮助我,请这里是我的代码:SharePoint 2010事件接收器,列表项事件,文档库,事件ItemAdded not firing

public class EventReceiver1 : SPItemEventReceiver 
{ 
    /// <summary> 
    /// An item was added. 
    /// </summary> 
    private string[] subFolders = new string[] { "sub-folder1", "sub-folder2", "sub folder3" }; 
    public override void ItemAdded(SPItemEventProperties properties) 
    { 
     base.ItemAdded(properties); 
     SPWeb web = properties.OpenWeb(); 
     SPDocumentLibrary ProductsLibrary = (SPDocumentLibrary)web.Lists[properties.ListId]; 
     if (properties.ListItem.ContentType.Name.ToLower() == "new content type" && properties.ListItem.Folder.ParentFolder.ToString() == ProductsLibrary.RootFolder.ToString()) 
     { 
      string Url = properties.ListItem.ParentList.RootFolder.ServerRelativeUrl.ToString(); 
      SPFolder libFolder = ProductsLibrary.RootFolder.SubFolders[properties.ListItem.Name]; 
      string newFolderUrl = (web.Url + "/" + libFolder.ToString()); 
      foreach (string subfolder in subFolders) 
      { 
       SPListItem newSubFolder = ProductsLibrary.Items.Add(newFolderUrl, SPFileSystemObjectType.Folder, subfolder); 
       newSubFolder.Update(); 
      } 
     } 
    } 
} 

谢谢

回答

0

的解决方案是opent的elements.xml中和用代码替换 ,代码将完美运行。

+0

用哪个替换什么?你的回答没有意义。 – Mac

0

确保

  1. 你已经加入此事件接收器为特征
  2. 包含此事件接收器的功能被激活

事件不会火,如果你还没有跟随的一部分以上步骤

相关问题