开发者

There is no web named - Sharepoint Event Hander

I activated following code with feature (web level scope). Now when I add an item to any document library it should create a folder "".

No folder is created and no error is given either? Can anyone see what is going on? I got the following from the log file. I found similar code all over google so I am kinda puzzled why is not working in my environment?

Thanks

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SharePoint;

namespace AddaFolder
{
    class clAddaFolder : SPItemEventReceiver
    {
        public override void ItemAdded(SPItemEventProperties properties)
        {
            base.ItemAdded(properties);
            using (SPSite currentSite = new SPSite(SPContext.Current.Site.Url))
            using (SPWeb currentWeb = currentSite.OpenWeb(SPContext.Current.Web.Url))
            {
                try
                { 
                //SPListTemplateCollection coll = currentWeb.ListTemplates;

                //Get the current document library link
                SPList newList = currentWeb.GetList(SPContext.Current.Web.Url);
                    //.Site.Url);
                //newList = currentWeb.Lists.Add("My TEST Folder",SPFileSystemObjectType.Folder);
                //newList.Lists.Items.Add("My TEST Folder", SPFileSystemObjectType.Folder);
                //newList.Update();               

                SPListItem newListItem;
                //newListItem = newList.Folders.Add("", SPFileSystemObjectType.Folder, "My Test Folder");
                newListItem = newList.Folders.Add(newList.ToString(), SPFileSystemObjectType.Folder, "My Test Folder");
                newListItem.Update();              
                }
                catch (SPException spEx)
                {
                    throw spEx;                
                }

            }

        }
    }
}

log file

04/03/2010 17:52:44.25  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Shared Documents/Forms/AllItems.aspx".  
04/03/2010 17:52:44.26  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/My TEST Doc Library/Forms/AllItems.aspx".  
04/03/2010 17:52:44.27  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Calendar/calendar.aspx".  
04/03/2010 17:52:44.29  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Tasks/AllItems.aspx".  
04/03/2010 17:52:44.30  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Team Discussion/AllItems.aspx".  
04/03/2010 17:52:44.31  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Shared Documents/Forms/AllItems.aspx".  
04/03/2010 17:52:44.32  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/My TEST Doc Library/Forms/AllItems.aspx".  
04/03/2010 17:52:44.34  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Calendar/calendar.aspx".  
04/03/2010 17:52:44.35  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Tasks/AllItems.aspx".  
04/03/2010 17:52:44.36  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Team Discussion/AllItems.aspx".  
04/03/2010 17:52:51.33  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Shared Documents/Forms/AllItems.aspx".  
04/03/2010 17:52:51.34  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/My TEST Doc Library/Forms/AllItems.aspx".  
04/03/2010 17:52:51.35  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Calendar/calendar.aspx".  
04/03/2010 17:52:51.37  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Tasks/AllItems.aspx".  
04/03/2010 17开发者_高级运维:52:51.38  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Team Discussion/AllItems.aspx".  
04/03/2010 17:52:51.39  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Shared Documents/Forms/AllItems.aspx".  
04/03/2010 17:52:51.40  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/My TEST Doc Library/Forms/AllItems.aspx".  
04/03/2010 17:52:51.41  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Calendar/calendar.aspx".  
04/03/2010 17:52:51.43  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Tasks/AllItems.aspx".  
04/03/2010 17:52:51.44  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Team Discussion/AllItems.aspx".  
04/03/2010 17:53:02.69  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Shared Documents/Forms/AllItems.aspx".  
04/03/2010 17:53:02.71  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/My TEST Doc Library/Forms/AllItems.aspx".  
04/03/2010 17:53:02.72  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Calendar/calendar.aspx".  
04/03/2010 17:53:02.73  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Tasks/AllItems.aspx".  
04/03/2010 17:53:02.74  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Team Discussion/AllItems.aspx".  
04/03/2010 17:53:02.75  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Shared Documents/Forms/AllItems.aspx".  
04/03/2010 17:53:02.76  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/My TEST Doc Library/Forms/AllItems.aspx".  
04/03/2010 17:53:02.77  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Calendar/calendar.aspx".  
04/03/2010 17:53:02.78  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Tasks/AllItems.aspx".  
04/03/2010 17:53:02.79  w3wp.exe (0x00C0)                        0x0C88 Windows SharePoint Services    General                        8kh7 High     There is no Web named "/sites/myDevSiteColl/myDevWeb/Lists/Team Discussion/AllItems.aspx".


I see two major problems there:

  • SPContext.Current.Web.Url is the url of a web, not a list.
  • SPList has a RootFolder property that would probably be more appropriate than ToString()


SPContext.Current - at least in my experience - is for some reason null in event listeners; instead, get at the current SPWeb and SPSite through the relevant properties in the SPItemEventProperties parameter (and do not use them in "using" since that would make them disposed for later processing).

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜