Sharepoint Receiver ListUrl在特定列表的事件接收器中不工作?

Sharepoint Receiver ListUrl在特定列表的事件接收器中不工作?,sharepoint,sharepoint-2010,sharepoint-2013,event-receiver,Sharepoint,Sharepoint 2010,Sharepoint 2013,Event Receiver,我尝试调试EventReceiver不工作。它通常工作正常。我唯一改变的是添加了内部AAM http://spfoundation/dept/it/Lists/App%20Change%20Request/AllItems.aspx 上面的url是默认的AAM和列表url <Receivers ListUrl="Lists/App%20Change%20Request"> <Receiver> <Name>AppChangeEventReceiv

我尝试调试EventReceiver不工作。它通常工作正常。我唯一改变的是添加了内部AAM

http://spfoundation/dept/it/Lists/App%20Change%20Request/AllItems.aspx

上面的url是默认的AAM和列表url

<Receivers  ListUrl="Lists/App%20Change%20Request">
  <Receiver>
    <Name>AppChangeEventReceiverItemAdded</Name>
    <Type>ItemAdded</Type>
    <Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>
    <Class>AppChangeRequest.AppChangeEventReceiver.AppChangeEventReceiver</Class>
    <SequenceNumber>10000</SequenceNumber>
  </Receiver>

AppChangeEventReceiverItemAdded
添加项目
$SharePoint.Project.AssemblyFullName$
AppChangeRequest.AppChangeEventReceiver.AppChangeEventReceiver
10000

公共类AppChangeEventReceiver:SPItemEventReceiver
{
/// 
///添加了一个项目。
/// 
添加了公共覆盖无效项(SPItemEventProperties属性)
{
//基本。添加的项目(属性);
使用(SPWeb=properties.OpenWeb())
{
尝试
{
web.AllowUnsafeUpdates=true;
SPList list=web.Lists[“项目/任务状态详细信息”];
......
......
web.AllowUnsafeUpdates=false;
}
捕获(例外情况除外)
{
掷骰子;
}
}
}

在visual studio 2012中,我能够正确地调试。现在我没有。我在这里做了什么错误吗?断点甚至没有到达它的第一行。“没有加载符号…”

有一些事情可以尝试

1-删除GAC中项目的dll(C:\Windows\Microsoft.NET\assembly\GAC\ MSIL)

2-再次部署项目

3-控制dll(如果它是最后一个部署的dll)。(控制日期)

4-来自vs2012 -调试并附加到进程(w3wp.exe和OWSTIMER.exe)

如果此操作不起作用,请重新启动vs2012并重试步骤


我希望它能对你有所帮助!!

这可能是一个迟来的答案,但仍然如此。我花了半天的时间在我的环境中发现了非常类似的问题。如果AAM设置不正确,事件接收器很可能不会被触发(尽管站点已加载,并且所有功能都很好…嗯,几乎所有功能都正常)。在这种情况下,您可能会在事件日志中发现如下错误:

事件接收器引发异常:System.IO.FileNotFoundException:找不到处的Web应用程序。请验证您键入的URL是否正确。如果URL应服务于现有内容,则系统管理员可能需要添加新的请求URL映射到所需的应用程序

public class AppChangeEventReceiver : SPItemEventReceiver
{
    /// <summary>
    /// An item was added.
    /// </summary>
    public override void ItemAdded(SPItemEventProperties properties)
    {
       // base.ItemAdded(properties);
        using (SPWeb web = properties.OpenWeb())
        {
            try
            {
                web.AllowUnsafeUpdates = true;
                SPList list = web.Lists["Project/Task Status Details"];

                 ......
                 ......

               web.AllowUnsafeUpdates = false;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
    }