代码之家  ›  专栏  ›  技术社区  ›  MrHinsh - Martin Hinshelwood

SharePoint 2010电子邮件事件接收器未启动?

  •  1
  • MrHinsh - Martin Hinshelwood  · 技术社区  · 16 年前

    我在2010年的清单上有两个事件接收器。

    第一个是itemadded receiver,每次都有效:

    <?xml version="1.0" encoding="utf-8"?>
    <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
      <Receivers ListTemplateId="10000">
          <Receiver>
            <Name>ListItemReceiverItemAdding</Name>
            <Type>ItemAdding</Type>
            <Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>
            <Class>SSW.TipDontRant.Sharepoint.ListItemReceiver</Class>
            <SequenceNumber>10000</SequenceNumber>
          </Receiver>
      </Receivers>
    </Elements>
    

    第二个是一个电子邮件事件的接收者,我只有prediocaly需要工作。在30-40次尝试调试应用程序的过程中,我只在两种情况下进行了调试。

    <?xml version="1.0" encoding="utf-8"?>
    <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
      <Receivers ListTemplateId="10000">
          <Receiver>
            <Name>EmailReceiverEmailReceived</Name>
            <Type>EmailReceived</Type>
            <Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>
            <Class>SSW.TipDontRant.Sharepoint.EmailReceiver</Class>
            <SequenceNumber>10000</SequenceNumber>
          </Receiver>
      </Receivers>
    </Elements>
    

    我已经附属于所有者,并且listmaplateid确实是正确的。

    在检查所建议的日志时,我发现以下错误:

    12/11/2009 17:12:54.01  OWSTIMER.EXE (0x2314)                       0x046C  SharePoint Foundation           Monitoring                      nasq    Medium      Entering monitored scope (Timer Job job-email-delivery) 7b525bbb-0972-4115-97b1-19b1d94ff8c5
    12/11/2009 17:12:54.03  OWSTIMER.EXE (0x2314)                       0x046C  SharePoint Foundation           E-Mail                          6873    Warning     An error occurred while processing the incoming e-mail file C:\inetpub\mailroot\Drop\24c6872e01ca7a8500000003.eml. The error was: Object reference not set to an instance of an object..    7b525bbb-0972-4115-97b1-19b1d94ff8c5
    12/11/2009 17:12:54.03  OWSTIMER.EXE (0x2314)                       0x046C  SharePoint Foundation           E-Mail                          6871    Information The Incoming E-Mail service has completed a batch.  The elapsed time was 00:00:00.0190038.  The service processed 1 message(s) in total.  Errors occurred processing 1 message(s): Message ID: <B05256D324B3D540853A95FF2AD9B257801F931C81@mooncalf>    7b525bbb-0972-4115-97b1-19b1d94ff8c5
    12/11/2009 17:12:54.03  OWSTIMER.EXE (0x2314)                       0x046C  SharePoint Foundation           Monitoring                      b4ly    Medium      Leaving Monitored Scope (Timer Job job-email-delivery). Execution Time=23.4762559268986 7b525bbb-0972-4115-97b1-19b1d94ff8c5
    

    这里读起来有点困难,但我认为重要的一点是:

    处理传入电子邮件文件c:\inetpub\mailroot\drop\24c6872e01ca7a85000000003.eml时出错。错误为:对象引用未设置为对象的实例。7B525BBB-0972-4115-97B1-19B1D94FF8C5

    这没什么大不了的!我不认为这是我的代码错误,因为它会在Visual Studio中抛出。我可以确认发送到文档库的电子邮件也可以正常工作。

    1. 其他人有这些问题吗?
    2. 有没有人能让这项工作顺利进行?

    [更新]我在周末留下了我的代码,完全没有碰它,现在它工作了!共享点部分的这种接缝非常松散。

    所以,我现在有了一行失败的代码(请注意,我以前没有这么做),它引用了一个外部程序集,为此我打开了另一个问题 Sharepoint 2010 Project package: Cannot add a new project output assembly to the package

    1 回复  |  直到 15 年前
        1
  •  1
  •   MrHinsh - Martin Hinshelwood    15 年前

    看起来这是VS2010测试版2或SharePoint2010测试版中的一个bug。

    要解决IMedite问题,您需要删除站点、停用并删除解决方案,然后重新启动环境。

    只有当您对列表和接收到的事件进行结构更改,并且只对影响接收到的电子邮件事件进行接缝时,才会发生这种情况…