コード例 #1
0
        public ActionResult Index()
        {
            /*
             * string json = @"{
             *            'Name': 'Bad Boys',
             *            'ReleaseDate': '1995-4-7T00:00:00'
             *          }";
             *
             *
             * Dados m = JsonConvert.DeserializeObject<Dados>(json);
             *
             * Response.Write(m.Name); */

            if (Request.RequestType == "POST")

            {
                string cepParametro = Request.Form["cep"];
                if (!String.IsNullOrEmpty(cepParametro))
                {
                    string ApiBaseUrl = "https://viacep.com.br/ws/"; // endereço da sua api
                    string MetodoPath = cepParametro + "/json/";     //caminho do método a ser chamado

                    var model = new Cep();
                    try
                    {
                        var httpWebRequest = (HttpWebRequest)WebRequest.Create(ApiBaseUrl + MetodoPath);
                        httpWebRequest.ContentType = "application/json";
                        httpWebRequest.Method      = "GET";

                        var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                        using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                        {
                            Cep retorno = JsonConvert.DeserializeObject <Cep>(streamReader.ReadToEnd());


                            ViewBag.cep         = retorno.cep;
                            ViewBag.logradouro  = retorno.logradouro;
                            ViewBag.complemento = retorno.complemento;
                            ViewBag.bairro      = retorno.bairro;
                            ViewBag.localidade  = retorno.localidade;
                            ViewBag.uf          = retorno.uf;
                            ViewBag.gia         = retorno.gia;
                            ViewBag.unidade     = retorno.unidade;
                            ViewBag.ibge        = retorno.ibge;

                            CepRepository cepRepository = new CepRepository();
                            cepRepository.verificarPorId(retorno);

                            if (!cepRepository.salvar(retorno))
                            {
                                Response.Write("Erro ao salvar em arquivo xml");
                            }
                        }
                    }
                    catch (Exception e)
                    {
                        ViewBag.erro = "Ocorreu um erro ao buscar os dados do cep informado. Por favor, tente novamente." + e.Message;
                    }
                }
            }
            return(View());
        }
コード例 #2
0
 public CepViewModel()
 {
     _cepRepository = new CepRepository();
     BuscarCommand  = new Command(Buscar, PodeBuscar);
 }
コード例 #3
0
        public async Task E_Possivel_Realizar_CRUD_Cep()
        {
            using (var context = _serviceProvide.GetService <MyContext>())
            {
                MunicipioRepository _repositorioMunicipio = new MunicipioRepository(context);
                MunicipioEntity     _entityMunicipio      = new MunicipioEntity
                {
                    Nome    = Faker.Address.City(),
                    CodIBGE = Faker.RandomNumber.Next(1000000, 9999999),
                    UfId    = new Guid("e7e416de-477c-4fa3-a541-b5af5f35ccf6")
                };

                var _registroCriado = await _repositorioMunicipio.InsertAsync(_entityMunicipio);

                Assert.NotNull(_registroCriado);
                Assert.Equal(_entityMunicipio.Nome, _registroCriado.Nome);
                Assert.Equal(_entityMunicipio.CodIBGE, _registroCriado.CodIBGE);
                Assert.Equal(_entityMunicipio.UfId, _registroCriado.UfId);
                Assert.False(_registroCriado.Id == Guid.Empty);

                CepRepository _repositorio = new CepRepository(context);
                CepEntity     _entityCep   = new CepEntity
                {
                    Cep         = "13.481-001",
                    Logradouro  = Faker.Address.StreetName(),
                    Numero      = "0 até 2000",
                    MunicipioId = _registroCriado.Id
                };

                var _registroCriadoCep = await _repositorio.InsertAsync(_entityCep);

                Assert.NotNull(_registroCriadoCep);
                Assert.Equal(_entityCep.Cep, _registroCriadoCep.Cep);
                Assert.Equal(_entityCep.Logradouro, _registroCriadoCep.Logradouro);
                Assert.Equal(_entityCep.Numero, _registroCriadoCep.Numero);
                Assert.Equal(_entityCep.MunicipioId, _registroCriadoCep.MunicipioId);
                Assert.False(_registroCriadoCep.Id == Guid.Empty);

                _entityCep.Logradouro = Faker.Address.StreetName();
                _entityCep.Id         = _registroCriadoCep.Id;
                var _registroAtualizado = await _repositorio.UpdateAsync(_entityCep);

                Assert.NotNull(_registroAtualizado);
                Assert.Equal(_entityCep.Cep, _registroAtualizado.Cep);
                Assert.Equal(_entityCep.Logradouro, _registroAtualizado.Logradouro);
                Assert.Equal(_entityCep.MunicipioId, _registroAtualizado.MunicipioId);
                Assert.True(_registroCriadoCep.Id == _entityCep.Id);

                var _registroExiste = await _repositorio.ExistAsync(_registroAtualizado.Id);

                Assert.True(_registroExiste);

                var _registroSelecionado = await _repositorio.SelectAsync(_registroAtualizado.Id);

                Assert.NotNull(_registroSelecionado);
                Assert.Equal(_registroAtualizado.Cep, _registroSelecionado.Cep);
                Assert.Equal(_registroAtualizado.Logradouro, _registroSelecionado.Logradouro);
                Assert.Equal(_registroAtualizado.Numero, _registroSelecionado.Numero);
                Assert.Equal(_registroAtualizado.MunicipioId, _registroSelecionado.MunicipioId);

                _registroSelecionado = await _repositorio.SelectAsync(_registroAtualizado.Cep);

                Assert.NotNull(_registroSelecionado);
                Assert.Equal(_registroAtualizado.Cep, _registroSelecionado.Cep);
                Assert.Equal(_registroAtualizado.Logradouro, _registroSelecionado.Logradouro);
                Assert.Equal(_registroAtualizado.Numero, _registroSelecionado.Numero);
                Assert.Equal(_registroAtualizado.MunicipioId, _registroSelecionado.MunicipioId);
                Assert.NotNull(_registroSelecionado.Municipio);
                Assert.Equal(_entityMunicipio.Nome, _registroSelecionado.Municipio.Nome);
                Assert.NotNull(_registroSelecionado.Municipio.Uf);
                Assert.Equal("SP", _registroSelecionado.Municipio.Uf.Sigla);

                var _todosRegistros = await _repositorio.SelectAsync();

                Assert.NotNull(_todosRegistros);
                Assert.True(_todosRegistros.Count() > 0);

                var _removeu = await _repositorio.DeleteAsync(_registroSelecionado.Id);

                Assert.True(_removeu);

                _todosRegistros = await _repositorio.SelectAsync();

                Assert.NotNull(_todosRegistros);
                Assert.True(_todosRegistros.Count() == 0);
            }
        }
コード例 #4
0
 public CepMapaViewModel()
 {
     _cepRepository = new CepRepository();
     _listaCeps     = new List <CepModel>();
     _mapa          = new Map();
 }
コード例 #5
0
 public CepPesquisaViewModel()
 {
     _cepRepository = new CepRepository();
 }
コード例 #6
0
 public CepController(CepRepository repository)
 {
     _repository = repository;
 }