/// <summary> /// Método que devolve a view Create do modelo ViewModelNovoMembroFamilia /// obtém dados de Famílias e envia para view lista de Famílias /// </summary> /// <returns>devolve view com formulário para criar o objeto da classe ViewModelNovoMembroFamilia</returns> public IActionResult Create() { ViewData["FamiliaID"] = new SelectList(_context.Familias, "ID", "Nome"); List <Familia> listaFamilia = _context.Familias.ToList(); ViewModelNovoMembroFamilia novoViewModelMembro = new ViewModelNovoMembroFamilia(); novoViewModelMembro.Familias = listaFamilia; return(View(novoViewModelMembro)); }
public async Task <IActionResult> Create([Bind("ID,Nome,GrauParentesco,DataNascimento,Morada,Cidade,Distrito,Codigo,Postal,Email,Descricao,FamiliaID")] MembroFamilia membroFamilia) { HttpClient client = MyConvertHttpClient.Client; var email = membroFamilia.Email; var dataNascimento = membroFamilia.DataNascimento; string path = "?key=private_f9cea434f6d212d56da0091d19a97d71&email=" + email; string json = JsonConvert.SerializeObject(email); HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, path); request.Content = new StringContent(json, System.Text.Encoding.UTF8, "application/json"); HttpResponseMessage response = await client.SendAsync(request); if (!response.IsSuccessStatusCode) { return(Redirect("/")); } string json_r = await response.Content.ReadAsStringAsync(); ResponseAPI responseResult = JsonConvert.DeserializeObject <ResponseAPI>(json_r); ViewModelNovoMembroFamilia novoViewModelMembro = new ViewModelNovoMembroFamilia(); novoViewModelMembro.ResponsesAPI = responseResult; List <Familia> listaFamilia = _context.Familias.ToList(); novoViewModelMembro.Familias = listaFamilia; if (dataNascimento > DateTime.Now) { novoViewModelMembro.VerificaDataNascimento = false; //novoViewModelMembro.ResponsesAPI = null; return(View(novoViewModelMembro)); } else if (responseResult.Result != "valid") { return(View(novoViewModelMembro)); } else if (ModelState.IsValid) { _context.Add(membroFamilia); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["FamiliaID"] = new SelectList(_context.Familias, "ID", "Nome", membroFamilia.FamiliaID); return(View(membroFamilia)); }