public IHttpActionResult CreateNewModel(RebalanceCreationModel model) { if (model != null && ModelState.IsValid) { List <Domain.Portfolio.Rebalance.TemplateDetailsItemParameter> parameters = new List <Domain.Portfolio.Rebalance.TemplateDetailsItemParameter>(); foreach (var parameter in model.parameters) { parameters.Add(new Domain.Portfolio.Rebalance.TemplateDetailsItemParameter { EquityId = parameter.parameterId, ItemName = parameter.parameterName, CurrentWeighting = (double)parameter.weighting, ModelId = model.modelId, identityMetaKey = parameter.identityMetaKey }); } ; Domain.Portfolio.Rebalance.RebalanceModel newModel = new Domain.Portfolio.Rebalance.RebalanceModel { ModelId = model.modelId, AdviserId = User.Identity.GetUserId(), ClientGroupId = model.clientGroupId, ModelName = model.name, ProfileId = (int)Enum.Parse(typeof(RebalanceModelProfile), model.profileId), TemplateDetailsItemParameters = parameters }; if (model.modelId != null) { edisRepo.UpdateRebalanceModel(newModel); } else { edisRepo.CreateRebalanceModel(newModel); } return(Ok()); //rebRepo.CreateNewModel(model, User.Identity.GetUserId()); } return(BadRequest()); }