Ich muss einen Benutzer in einer Liste finden, um die Eigenschaft "assignedto task" festzulegen, diese Informationen sind in einer Liste. So verwende ich diese Methode:warum stoppe mein Sharepoint-Workflow immer, wenn ich diesen Code verwende?
public static SPUser GetSPUser(SPListItem item, string key){
SPFieldUser field = item.Fields[key] as SPFieldUser;
if (field != null)
{
SPFieldUserValue fieldValue = field.GetFieldValue(item[key].ToString()) as SPFieldUserValue;
if (fieldValue != null)
{
return fieldValue.User;
}
}
return null;
}
Das Problem ist, dass, wenn ich diese Methode verwenden oder diesen Teil des Codes, meinen Workflow Stopp ohne etwas zu sagen. Hier ein exemple von Code, wenn ich es verwenden:
using (SPSite site = new SPSite(adress_of_my_site))
{
using (SPWeb web = site.OpenWeb())
{
SPList list = web.Lists["Acteurs du projet"];
SPView view = cobj_ListeDesActeursDuProjet.DefaultView;
SPListItemCollection itemcollection = list.GetItems(view);
foreach (SPListItem item in itemcollection)
{
SPUser lobj_acteur = Utilities.GetSPUser(item,"acteur");
// Dictionary<string,class>
ActeursDuProjet[item["Rôle"].ToString()] =
new ActeursDuProjet()
{
Login = lobj_acteur.LoginName,
Email = lobj_acteur.Email
};
}
}
}
Wenn ich den Inhalt meiner foreach meinen Workflow weiterhin auch einen Kommentar ...
Wenn jemand eine Idee haben, wird es kühl sein.
Grüße, Loïc
edit: Problem im Code
Haben Sie versucht, den Code zu debuggen? Schließen Sie Visual Studio einfach an den w3wp-Prozess an (kopieren Sie ggf. die Debug-PDB-Datei an den Speicherort, an dem die DLL mit dem obigen Code gespeichert ist (bin-Verzeichnis oder GAC) – Colin
Ja, natürlich und kein Fehler ... – LoKtO
Während der Workflow ausgeführt wird und kein Fehler auftritt Wie weiß man, dass es bei diesem bestimmten Loop-Inhalt stoppt? Es hört einfach auf zu laufen? – Colin