2011-10-06 88 views
1

在自定義工作流中使用SPUtility.SendEmail方法時遇到了一些麻煩。無法發送定製工作流SharePoint 2010中的電子郵件

private void onWorkflowActivated1_Invoked(object sender, ExternalDataEventArgs e) 
    { 
     if (SPUtility.IsEmailServerSet(workflowProperties.Site.OpenWeb())) 
     { 
      StringDictionary headers = new StringDictionary(); 
      headers.Add("to", "[email protected]"); 
      headers.Add("from", "[email protected]"); 
      headers.Add("content-type", "text/html"); 

      SPSecurity.RunWithElevatedPrivileges(delegate() 
      { 
       bool test = SPUtility.SendEmail(web, headers, "some message body"); 
      }); 
     } 
    } 

在代碼的上面,方法SPUtility.SendEmail總是返回false。

我甚至試圖使用RunWithElevatedPrivileges,但該方法仍然返回false。

smtp配置不是問題,因爲任務分配到sharepoint時的標準電子郵件通知發送完畢。

奇怪的部分是,我已經嘗試使用計時器作業這個SendEmail方法,並且該方法工作得很好。

請有人幫助我,如果有什麼我需要添加到我的方法上面。

謝謝。

+2

您是否嘗試使用[SendEmail](http://msdn.microsoft.com/en-us/library/ms466369.aspx)活動? –

回答

0

我找不到這個問題的根源。 我決定創建2個工作流程:第一個是使用啓動參數發送電子郵件(使用Sharepoint設計器構建)。第二個是啓動第一個工作流程的工作流程。

它現在正在運行。

0

嘗試在提升的權限範圍內獲取Web引用。

相關問題