public ActionResult Create(FormCollection _POST) { try { // set up a user account for display in view CustomUser newUser = new CustomUser() { CopyFrom = _POST["userprincipalname"], FirstName = _POST["firstname"], LastName = _POST["lastname"], Organization = _POST["organization"], Password = _POST["password"], UserName = _POST["username"], DomainName = _POST["domainname"], TestUser = _POST["testuser"] == "on" ? true : false, PasswordNeverExpires = _POST["passwordneverexpires"] == "on" ? true : false, }; model.UserList.Add(newUser); CommonCAS.Log(string.Format("has run User/CreateUser() to create {0}", newUser.UserName)); // execute powershell script and dispose powershell object using (MyPowerShell ps = new MyPowerShell()) { ps.CreateUser(newUser); var result = ps.Invoke(); if (result.Count() > 0) { foreach (PSObject message in result) { model.OKMessage.Add(message.ToString()); } } } CommonCAS.Stats("User/Create"); return(View("CreateSuccess", model)); } catch (Exception exc) { CommonCAS.Log("Exception: " + exc.Message); model.ActionFailed = true; model.Message = exc.Message; return(View(model)); } }