TFS 2010 Arbeitsaufgabe ist nicht bereit zu sparen, aber es gibt keine Validierung Elemente
Ich bin versucht zu retten, ein TFS Work Item programmatisch, sondern immer die Ausnahme:
TF237124: Work Item is not ready to save
Nun, ich verstehe, was dieser zu mir sagt - dass die Arbeit Artikel fehlt ein erforderliches Feld oder ähnliches, und mein code rechnet das durch den Aufruf von:
ArrayList ValidationResult = wi.Validate();
vor dem speichern. Aber meine ArrayList enthält keine Elemente, die nach diesem Aufruf.
Habe ich versucht, die Anmeldung bei der TFS web-interface mit den gleichen Anmeldeinformationen und das erstellen einer Arbeitsaufgabe, die Art und Weise, die funktioniert gut.
Wie kann ich herausfinden, warum mein Workitem nicht speichern? Hier ist mein code:
//get a reference to the team project collection (authenticate as generic service account)
using (var tfs = new TfsTeamProjectCollection(tfsuri, new System.Net.NetworkCredential("My_User", "password")))
{
tfs.EnsureAuthenticated();
var workItemStore = GetWorkItemStore(tfs);
//create a new work item
WorkItem wi = new WorkItem(GetWorkItemType(type, workItemStore));
{
//Values are supplied as a KVP - Field Name/Value
foreach (KeyValuePair<string,string> kvp in values)
{
if (wi.Fields.Contains(kvp.Key))
{
wi.Fields[kvp.Key].Value = kvp.Value;
}
}
ValidationResult = wi.Validate();
}
if (ValidationResult.Count == 0)
{
wi.State = wi.GetNextState("Microsoft.VSTS.Actions.Checkin");
wi.Save();
return wi.Id;
}
else
{
return 0;
}
}
}
- Welche version von TFS?
- 2010, ich habe aktualisiert die Titel.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Validierung der Arbeitsaufgabe vor Sie sind, verändert sich der Zustand. Übergang zu einem neuen Zustand führen kann Workitem Template Aktionen/Regeln verarbeitet werden. Diese könnten das ändern der Werte einiger Felder und/oder neue Regeln zu den Feldern, die dazu führen, dass die bisher gültigen Daten ungültig zu sein.
Übergang von einem Offenen Zustand zu einem Geschlossenen Zustand könnte benötigen jemanden, der eine vollständige "Kritik" - Feld (zum Beispiel) - wenn es leer ist, kann es nicht transission.
Versuchen, die Validierung nach dem Zustand zu ändern und sehen, ob es irgendwelche Ausfälle.