public ActionResult VerifyDomain(FormCollection _POST) { try { model.VerifyDomain = new CustomVerifyDomain() { Organization = _POST["organization"], Domain = _POST["domainname"] }; CommonCAS.Log(string.Format("has run Office365/VerifyDomain() to verify '{0}' for '{1}'", model.VerifyDomain.Domain, model.VerifyDomain.Organization)); // execute powershell script and dispose powershell object using (MyPowerShell ps = new MyPowerShell()) { ps.VerifyDomain(model.VerifyDomain.Organization, model.VerifyDomain.Domain); var result = ps.Invoke(); if (result.Count() == 0) { model.OKMessage.Add(string.Format("Domain {0} has been added.", model.VerifyDomain.Domain)); } else { foreach (PSObject message in result) { CommonCAS.Log(string.Format("Domain {0} info: {1}", model.VerifyDomain.Domain, message.ToString())); throw new Exception(string.Format(message.ToString())); } } } model.OKMessage.Add(string.Format("Domain '{0}' added for organization '{1}'.", model.VerifyDomain.Domain, model.VerifyDomain.Organization)); CommonCAS.Stats("Office365/VerifyDomain"); return(View("VerifyDomain", model)); } catch (Exception exc) { CommonCAS.Log("Exception: " + exc.Message); model.ActionFailed = true; model.Message = exc.Message; return(View(model)); } }