2010-10-27 147 views
2

我已經創建了一個自定義列表。我有一個名爲經理電子郵件的字段。每當列表項目被添加到該字段管理器時,都應該收到一封電子郵件。這個工作流應該是自動的。sharepoint工作流程

任何路線請

回答

2

「每當一個列表項被添加」聽起來像一個Event Receiver給我,而不是一個工作流程:

public class MyEventReceiver : SPItemEventReceiver 
{ 
    public override void ItemAdded(SPItemEventProperties properties) 
    { 
     using (SPWeb web = properties.OpenWeb()) 
     { 
      SPListItem item = properties.ListItem; 
      SPUtility.SendEmail(web, true, true, item["ManagerEmail"].ToString(), "Subject", "Body"); 
     } 
    } 
} 

編輯:

你重視這個代碼列表通過一個功能。如果您創建了自定義列表模板,則可以使用Receivers Element。但是,如果自定義列表是通過用戶界面創建的,您將需要使用功能接收器:

public class MyFeatureReceiver : SPFeatureReceiver { 

    public override void FeatureActivated(SPFeatureReceiverProperties properties) { 
     using (SPWeb web = properties.Feature.Parent as SPWeb) 
     { 
      Type type = typeof(MyEventReceiver); 
      SPList list = web.Lists["My Custom List"]; 
      list.EventReceivers.Add(SPEventReceiverType.ItemAdded, type.Assembly.FullName, type.FullName); 
      list.Update(); 
     } 
    } 

    public override void FeatureDeactivating(SPFeatureReceiverProperties properties) { 
    } 
    public override void FeatureInstalled(SPFeatureReceiverProperties properties) { 
    } 
    public override void FeatureUninstalling(SPFeatureReceiverProperties properties) { 
    } 
} 

欲瞭解更多信息:

+0

的項目從用戶界面添加,我已經在設計師的驗證表單中創建了一個表單。所以我不確定我在哪裏寫這個代碼? – 2010-10-27 14:08:08

+0

使用功能將Event Receiver附加到列表。查看我的編輯瞭解更多信息。 – 2010-10-27 16:30:45

+0

謝謝。非常有用 – 2010-10-28 12:13:10