public static void Main()
WorkItem item = new WorkItem("Fix Bugs",
"Fix all bugs in my code branch",
new TimeSpan(3, 4, 0, 0));
ChangeRequest change = new ChangeRequest("Change Base Class Design",
"Add members to the class",
Console.WriteLine(item.ToString());
change.Update("Change the Design of the Base Class",
Console.WriteLine(change.ToString());
private static int currentID;
protected int ID { get; set; }
protected string Title { get; set; }
protected string Description { get; set; }
protected TimeSpan jobLength { get; set; }
Description = "Default description.";
jobLength = new TimeSpan();
public WorkItem(string title, string desc, TimeSpan joblen)
protected int GetNextID()
public void Update(string title, TimeSpan joblen)
public override string ToString()
return String.Format("{0} - {1}", this.ID, this.Title);
public class ChangeRequest : WorkItem
protected int originalItemID { get; set; }
public ChangeRequest() { }
public ChangeRequest(string title, string desc, TimeSpan jobLen,
this.originalItemID = originalID;