public static void AddTask(string taskText, string userObjectId, string userName) { // Add a new task to the db GroupClaimContext db = new GroupClaimContext(); Task newTask = new Task { Status = "NotStarted", TaskText = taskText, Creator = userObjectId, SharedWith = new List<AadObject>(), CreatorName = userName, }; // Get the AadObject representing from the user if it exists AadObject user = db.AadObjects.Find(userObjectId); if (user != null) { // Update the user's display name in case it has changed user.DisplayName = userName; } else { user = new AadObject { AadObjectID = userObjectId, DisplayName = userName, }; } newTask.SharedWith.Add(user); db.Tasks.Add(newTask); db.SaveChanges(); }
public static void AddShare(int taskId, string objectId, string displayName) { //Share a task with a user or group GroupClaimContext db = new GroupClaimContext(); AadObject aadObject = db.AadObjects.Find(objectId); if (aadObject != null) { aadObject.DisplayName = displayName; } else { aadObject = new AadObject { AadObjectID = objectId, DisplayName = displayName, }; } Task task = db.Tasks.Find(taskId); List<AadObject> shares = task.SharedWith.ToList(); shares.Add(aadObject); task.SharedWith = shares; db.SaveChanges(); }