public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { var taskViewData = new TaskViewData(); int?id = null; if (controllerContext.RouteData.Values["Id"].ToString().Length > 0) { id = Int32.Parse(controllerContext.RouteData.Values["Id"].ToString()); } using (var db = new TrackerDataContext()) { if (id != null) { taskViewData.Task = db.Task.GetByKey(id.Value); taskViewData.Task.Detach(); } else { taskViewData.Task = new Task(); } } return(taskViewData); }
public TaskViewData GetData(Task task) { var taskViewData = new TaskViewData(); if (null == task) { task = new Task(); } taskViewData.Task = task; taskViewData.AssignedUsers = UIHelper.GetUserSelectList(task.AssignedId); taskViewData.CreatedUsers = UIHelper.GetUserSelectList(task.CreatedId); taskViewData.Statuses = UIHelper.GetStatusSelectList(task.Status); taskViewData.Priorities = UIHelper.GetPrioritySelectList(task.Priority); using (var db = new TrackerDataContext()) { db.ObjectTrackingEnabled = false; taskViewData.Audits = UIHelper.TransformAudits(db.Audit.ByTaskId(task.Id).OrderByDescending(a => a.Date).ToList()); } return(taskViewData); }