2012-02-13 81 views
1

我正在爲sharepoint 2010創建一個電子郵件事件接收器,用於接收電子郵件的文檔庫,然後我希望能夠將發送到該列表的那些電子郵件複製到另一個。現在我該怎麼做,使用電子郵件事件接收器而不是itemAdded事件接收器?我可以使用什麼對象方法來獲取複製方法到另一個列表等?Sharepoint 2010電子郵件事件接收器

+0

SPEmailEventReceiver(如果不是在沙箱)或與ItemAdded你只檢查「到」屬性的值。 – 2012-02-13 13:07:48

+0

是的,我使用SPEmailReceiver和EmailReceived方法,但如何將項目複製到另一個列表,因爲它們沒有複製到SPEmailRecieved – user1063793 2012-02-13 13:18:07

回答

2

SPEmailEventReceiverEMailReceived方法。

當你把MSDN example code

public class Email_Handler: SPEmailEventReceiver 
{ 
    public override void EmailReceived(
     SPList oList, 
     SPEmailMessage oMessage, 
     string strReceiverData) 
    { 
     SPListItem oListItem = oList.Items.Add(); 
     oListItem["Title"] = oMessage.Headers["Subject"]; 
     oListItem["Body"] = oMessage.HtmlBody; 
     oListItem.Update(); 
    } 
} 

你看到他們通過oList.Items.Add()添加到列表中的列表項這是你可以做什麼。您也可以將該項目添加到任何其他列表。

一旦您擁有了列表項,您可以使用SPListItem.CopyTo方法將其複製到任何其他列表中。

一個很好的例子爲電子郵件事件接收器:http://pholpar.wordpress.com/2010/01/13/creating-a-simple-email-receiver-for-a-document-library/

+0

內的方法如何將電子郵件項目傳遞到items.add()方法,然後我可以複製到另一個列表,因爲它需要一個字符串url和對象類型。 – user1063793 2012-02-13 14:16:16

+0

請參閱電子郵件事件接收器的示例:使用'.GetMessageStream()'獲取完整的消息。沒有其他「電子郵件項目」。 – 2012-02-13 16:16:15