public ActionResult DeleteConfirmed(int id) { PesquisaWhois pesquisaWhois = db.Pesquisas.Find(id); db.Pesquisas.Remove(pesquisaWhois); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "Id,Dominio,DataPesquisa,Registrado,DataRegistro,UltimaAlteracao,Expiracao,NomesServidores")] PesquisaWhois pesquisaWhois) { if (ModelState.IsValid) { db.Entry(pesquisaWhois).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(pesquisaWhois)); }
public ActionResult Create([Bind(Include = "Id,Dominio,DataPesquisa,Registrado,DataRegistro,UltimaAlteracao,Expiracao,NomesServidores")] PesquisaWhois pesquisaWhois) { if (ModelState.IsValid) { db.Pesquisas.Add(pesquisaWhois); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(pesquisaWhois)); }
// GET: PesquisaWhois/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PesquisaWhois pesquisaWhois = db.Pesquisas.Find(id); if (pesquisaWhois == null) { return(HttpNotFound()); } return(View(pesquisaWhois)); }
// GET: PesquisaWhois/Pesquisar public ActionResult Pesquisar(string dominio) { try { if (string.IsNullOrEmpty(dominio) || dominio.Trim().Length == 0) { throw new Exception("Nada foi digitado"); } dominio = dominio.ToLower(); var pesquisas = db.Pesquisas.ToList(); pesquisas = pesquisas.FindAll(pred => pred.Dominio == dominio); pesquisas.OrderBy(pred => pred.DataPesquisa.Ticks); if (pesquisas.Count > 0 && (DateTime.Now - pesquisas.Last().DataPesquisa).TotalHours < 1) { throw new Exception("Não é possível pesquisar informações do mesmo domínio com intervalos menores de uma hora"); } try { var pesquisa = PesquisaWhois.FromDomain(dominio); db.Pesquisas.Add(pesquisa); db.SaveChanges(); return(RedirectToAction("Index", new { dominio = pesquisa.Dominio })); } catch (WebException e) { if (e.Response == null) { switch (e.Status) { case WebExceptionStatus.NameResolutionFailure: throw new Exception("Não foi possível estabelecer uma conexão ao jsonwhoisapi.com"); default: throw e; } } else { switch ((int)(e.Response as HttpWebResponse).StatusCode) { case 422: throw new Exception("Domínio com formatação incorreta"); default: throw e; } } } } catch (Exception e) { TempData["Error"] = e.Message; TempData["NaoPesquisa"] = true; return(RedirectToAction("Index", new { dominio = dominio })); } }
public ActionResult Pesquisar(string dominio) { if (string.IsNullOrEmpty(dominio)) { return(View()); } try { var pesquisa = PesquisaWhois.FromDomain(dominio); db.Pesquisas.Add(pesquisa); db.SaveChanges(); return(RedirectToAction("Index")); }catch (Exception e) { return(RedirectToAction("Pesquisar", new { error = e.Message })); } }