In TFS 11, iterations got two new interesting properties: StartDate and FinishDate. You can edit them via WebAccess only:

But you still have programmatic access to them. To read the dates, simply parse all iterations from the server the way you have used to do it (here is a good example code by Shai Raiten: TFS API Part 9: Get Area/Iteration Programmatically) and you will have the dates inside the XML representation (even NodeInfo has two new fields for dates).
To write new dates, you can use new methods in the ICommonStructureService4 interface:
var css = server.GetService<ICommonStructureService4>();
var pi = css.GetProjectFromName("BasicScrumProject");
// get root iteration node
var node = css.ListStructures(pi.Uri)
.Where(item => item.StructureType == "ProjectLifecycle")
.Single();
// simple method, watch out for security!
css.SetIterationDates(node.Uri, DateTime.Now.AddDays(0), DateTime.Now.AddDays(14));
And there you have it, simple access to iteration dates.
Back to top