"Chaque fois qu'un des éléments de liste est ajouté" sonne comme un Event Receiver pour moi plutôt que d'un flux de travail:
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");
}
}
}
EDIT:
vous associez ce code à une liste à travers une caractéristique. Si vous avez créé un modèle de liste personnalisé, vous pouvez utiliser le Receivers Element. Mais si la liste personnalisée a été créée grâce à l'interface utilisateur, vous devez utiliser un récepteur d'entité:
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) {
}
}
Pour plus d'informations:
les articles sont ajouté à partir de l'interface utilisateur que j'ai créé un formulaire en concepteur avec la validation. Donc, je ne suis pas sûr d'où j'écris ce morceau de code? –
Vous attachez le récepteur d'événements à la liste avec une fonction. Voir mon édition pour plus d'informations. –
Merci. Très utile –