// GET: DeployTypes/CreateNew public IActionResult CreateNew(int Id) { //DeployType Deploy = new DeployType { TennantID = Id }; var tennant = _context.Tennants.Where(d => d.TennantID == Id).FirstOrDefault(); var deploylist = _context.DeployList.ToList(); var viewModel = new DeployChoiceViewModel(); viewModel.DeployList = new List <DeployList>(); viewModel.DeployListItem = new List <SelectListItem>(); viewModel.TennantID = Id; viewModel.TennantName = tennant.TennantName; viewModel.DeploySaved = "No"; foreach (var group in deploylist.GroupBy(item => item.DeployType)) { SelectListGroup listGroup = new SelectListGroup() { Name = group.Key }; foreach (var item in group) { viewModel.DeployListItem.Add(new SelectListItem { Text = item.DeployValue, Value = item.DeployName, Group = listGroup }); } ; } return(View(viewModel)); }
public async Task <IActionResult> CreateNew(DeployChoiceViewModel choices) { if (ModelState.IsValid) { //Logic to generate valid viewmodel with AzureDeployName parameter. var service = new DeployTypesService(_context); var DeployChoices = _service.CreateDeployTypes(choices); Guid guid = Guid.NewGuid(); var newdeploy = new DeployType(); newdeploy.DeployName = DeployChoices.DeployName; newdeploy.Description = DeployChoices.Description; newdeploy.DeploySaved = "No"; newdeploy.TennantID = DeployChoices.TennantID; newdeploy.DeployFile = DeployChoices.DeployFile; newdeploy.ParamsFile = DeployChoices.ParamsFile; newdeploy.DeployCode = DeployChoices.DeployCode; newdeploy.ResourceGroupName = DeployChoices.ResourceGroupName; newdeploy.AzureDeployName = DeployChoices.DeployCode + guid; _context.Add(newdeploy); await _context.SaveChangesAsync(); return(RedirectToAction("Index", new { id = DeployChoices.TennantID })); } return(View(choices)); }
//######################################### //## CreateTennantParams ## //######################################### public DeployChoiceViewModel CreateDeployTypes(DeployChoiceViewModel choices) { //var DeployChoices = _context.DeployChoices.Where(d => d.BaseOption == choices.DeployName && d.Domain == choices.Domain && d.Datadisk == choices.Datadisk && d.Size == choices.Size).FirstOrDefault(); var DeployChoices = _context.DeployChoices.Where(d => d.BaseOption == choices.DeployName).FirstOrDefault(); choices.DeployFile = DeployChoices.DeployFile; choices.ParamsFile = DeployChoices.ParamsFile; choices.DeployName = DeployChoices.DeployName; choices.DeployCode = DeployChoices.DeployCode; return(choices); }