我创建了一个自定义列表。我有一个名为manager Email的字段。每当列表项添加到此字段时,经理都应该收到一封电子邮件。此工作流程应该是自动的。
请指示
答案 0 :(得分: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。但是,如果通过UI创建自定义列表,则需要使用功能接收器:
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) {
}
}
了解更多信息: