Bonjour,
Alors voilà où j'en suis:
code de l'event receiver:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| /// <summary>
/// Un élément a été mis à jour.
/// </summary>
public override void ItemUpdated(SPItemEventProperties properties)
{
Log log = new Log();
log.ecritureFichier("Activation de l'event");
base.ItemUpdated(properties);
//on vérifie que l'élément est bien issue de la bibliothèque DemandeCreationSite
if (properties.ListTitle == "DemandeCreationSite")
{
//on vérifie que la colonne "approbation" de l'élément est bien "Approuvee"
string approbation = Convert.ToString(properties.AfterProperties["Approbation"]);
log.ecritureFichier(approbation);
if (approbation.Equals("Approuvee"))
{
//exécution du script de création de site
string formName = properties.FileSystemObjectTypePropertyName;
log.ecritureFichier(formName);
CreationSite cs = new CreationSite(formName);
Boolean success = cs.creationDuSite();
}
}
} |
En somme je vérifie que l'event provient d'une certaine bibliothèque (ici DemandesCreationSite) puis que la colonne "Approbation" a bien la valeur approuvee. Si on est dans ce cas de figure je récupère le nom de mon fomulaire et je le passe à la classe qui va s'occupée de traiter la création du site (j'ai également mis en place un système de fichier de log pour "voir" où des erreurs peuvent-être levées).
Le problème c'est que j'ai l'impression que je ne rentre jamais dans l'event receiver... En effet le fichier de log n'est jamais créé alors que c'est la première chose qui doit se passer lorsque l'on entre dans l'event...
(l'utilisateur que j'utilise à bien les droits pour créer ce fichier de log)
Avez-vous une idée d'où peut venir mon problème?
Pour rendre la solution disponible je suis allé dans l'administration centrale et dans solution j'ai uploadé le fichier ".wsp" généré par VS2012 et j'ai ensuite activée cette solution.
Pour info voici l'arborescence de ma solution:
arborescence de la solution
Partager