public ActionResult CreateCrayonTenant(FormCollection _POST) { try { CustomCrayonTenant CrayonTenant = new CustomCrayonTenant() { Name = _POST["Name"], Reference = _POST["Reference"], InvoiceProfile = _POST["InvoiceProfile"], DomainPrefix = _POST["DomainPrefix"], FirstName = _POST["FirstName"], LastName = _POST["LastName"], Email = _POST["Email"], PhoneNumber = _POST["PhoneNumber"], CustomerFirstName = _POST["CustomerFirstName"], CustomerLastName = _POST["CustomerLastName"], AddressLine1 = _POST["AddressLine1"], City = _POST["City"], Region = _POST["Region"], PostalCode = _POST["PostalCode"], }; model.CrayonTenant = CrayonTenant; CommonCAS.Log(string.Format("has run Crayon/CreateTenant() to create {0}", CrayonTenant.Name)); // execute powershell script and dispose powershell object using (MyPowerShell ps = new MyPowerShell()) { ps.CreateCrayonTenant(CrayonTenant); var result = ps.Invoke().Single(); model.CrayonTenantDetailed.Name = result.Members["Name"].Value.ToString(); model.CrayonTenantDetailed.DomainPrefix = result.Members["DomainPrefix"].Value.ToString(); model.CrayonTenantDetailed.PublisherCustomerId = result.Members["PublisherCustomerId"].Value.ToString(); model.CrayonTenantDetailed.ExternalPublisherCustomerId = result.Members["ExternalPublisherCustomerId"].Value.ToString(); model.CrayonTenantDetailed.Reference = result.Members["Reference"].Value.ToString(); model.CrayonTenantDetailed.AdminUser = result.Members["AdminUser"].Value.ToString(); model.CrayonTenantDetailed.AdminPass = result.Members["AdminPass"].Value.ToString(); } CommonCAS.Log(string.Format("Crayon Tenant {0} created with: {1}, {2}", CrayonTenant.Reference, model.CrayonTenantDetailed.AdminUser, model.CrayonTenantDetailed.AdminPass)); model.OKMessage.Add(string.Format("Crayon Tenant '{0}' created.", CrayonTenant.Name)); CommonCAS.Stats("Crayon/CreateCrayonTenant"); return(View("CreateCrayonTenantSuccess", model)); } catch (Exception exc) { CommonCAS.Log("Exception: " + exc.Message); model.ActionFailed = true; model.Message = exc.Message; return(View(model)); } }