public TargetSystem Add(TargetSystem parent) { // ignore parent as at the moment there is no requirment for hierarchy here TargetSystem detail = new TargetSystem(); detail.Default(Context.UserName); detail.Approve(Context.UserName); if (Context.TargetSystems.Local.Any()) { detail.TargetSystemID = Context.TargetSystems.Local.Max(x => x.TargetSystemID) + 1; } else { detail.TargetSystemID = 1; } Context.TargetSystems.Add(detail); detail.Name = "Target System Name"; return detail; }