public ActionResult AddMailboxPermission(FormCollection _POST) { try { CustomMailboxPermission addMailboxPermission = new CustomMailboxPermission() { Organization = _POST["organization"], UserPrincipalName = _POST["userprincipalname"], FullAccess = _POST["fullaccess"] == "on" ? true : false, SendAs = _POST["sendas"] == "on" ? true : false }; model.MailboxPermission = addMailboxPermission; CommonCAS.Log(string.Format("has run Mail/AddMailboxPermission() on user {0}", addMailboxPermission.UserPrincipalName)); // execute powershell script and dispose powershell object using (MyPowerShell ps = new MyPowerShell()) { ps.AddMailboxPermission(addMailboxPermission); var result = ps.Invoke(); } CommonCAS.Stats("Mail/AddMailboxPermission"); if (model.MailboxPermission.FullAccess) { model.OKMessage.Add(string.Format("Successfully created FullAccess group for {0}.", model.MailboxPermission.UserPrincipalName)); } if (model.MailboxPermission.SendAs) { model.OKMessage.Add(string.Format("Successfully created SendAs group for {0}.", model.MailboxPermission.UserPrincipalName)); } return(View("AddMailboxPermission", model)); } catch (Exception exc) { CommonCAS.Log("Exception: " + exc.Message); model.ActionFailed = true; model.Message = exc.Message; return(View(model)); } }