public IActionResult DeleteProprietario(GaranhaoProprietario garanhaoProprietario)
        {
            GaranhaoProprietario registro = _context.GaranhaoProprietarios
                                            .Where(p => p.Id.Equals(garanhaoProprietario.Id))
                                            .FirstOrDefault(p => p.Id == garanhaoProprietario.Id);

            _context.GaranhaoProprietarios.Remove(registro);
            _context.SaveChanges();

            return(RedirectToRoute(new { Controller = "Garanhao", Action = "Edit", id = garanhaoProprietario.GaranhaoId }));
        }
        public IActionResult PostAddProprietario(int id)
        {
            //https://www.talkingdotnet.com/handle-ajax-requests-in-asp-net-core-razor-pages/
            //http://binaryintellect.net/articles/16ecfe49-98df-4305-b53f-2438d836f0d0.aspx

            string retorno = null;

            {
                MemoryStream stream = new MemoryStream();
                Request.Body.CopyTo(stream);
                stream.Position = 0;
                using (StreamReader reader = new StreamReader(stream))
                {
                    string requestBody = reader.ReadToEnd();
                    if (requestBody.Length > 0)
                    {
                        var obj = JsonConvert.DeserializeObject <GaranhaoProprietario>(requestBody);
                        GaranhaoProprietario ObjTabela = JsonConvert.DeserializeObject <GaranhaoProprietario>(requestBody);
                        ObjTabela.Data = DateTime.Now;

                        //Verifica se o Proprietário já esta adicionado à Doadora
                        int count = _context.GaranhaoProprietarios
                                    .Where(a => a.GaranhaoId == ObjTabela.GaranhaoId &&
                                           a.ProprietarioId == ObjTabela.ProprietarioId).Count();

                        if (count == 0)
                        {
                            _context.GaranhaoProprietarios.Add(ObjTabela);
                            _context.SaveChanges();
                            retorno = "NOVO";
                            return(new JsonResult(retorno));
                        }
                        else
                        {
                            retorno = "EXISTE";
                            return(new JsonResult(retorno));
                        }
                    }
                }
            }

            return(new JsonResult(retorno));
        }
        //[ValidateAntiForgeryToken]
        public IActionResult Create(Garanhao garanhao)
        {
            try
            {
                _animalGaranhaoRepository.Salvar(garanhao);
                var idTemp = garanhao.Id;

                //Realiza a inclusão se existirem itens
                if (garanhao.TabelaItensJson != null)
                {
                    //Processo de inclusão de itens
                    List <GaranhaoProprietario> lista = JsonConvert.DeserializeObject <List <GaranhaoProprietario> >(garanhao.TabelaItensJson);

                    if (lista.Count > 0)
                    {
                        for (int i = 0; i < lista.Count; i++)
                        {
                            if (lista[i].Id == 0)
                            {
                                GaranhaoProprietario objLista = new GaranhaoProprietario();
                                objLista.GaranhaoId     = idTemp;
                                objLista.ProprietarioId = lista[i].ProprietarioId;
                                objLista.Data           = DateTime.Now;

                                _context.GaranhaoProprietarios.Add(objLista);
                                _context.SaveChanges();
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                return(BadRequest($"Erro:n{ex.Message}"));
            }
            return(RedirectToAction("Index"));
        }