Nesta aula iremos aprender como excluir dados de uma lista, criando a rota e a validação da confirmação para exclusão.
O objetivo da aula de hoje é fazer exclusão dos itens na lista.
Iremos criar uma nova coluna para excluir cada item. Nesta coluna vamos inserir o link que vai redirecionar para a rota de exclusão.
@{
ViewBag.Title = "home Page";
List< Business.Pagina> paginas = ViewBag.Paginas;
}
< div class = "jumbotron">
< h1>Paginas < /h1>
< div>
< a href="/paginas/novo" class = "btn btn-default"> Nova pagina < /a>
< /div
< table class = "table">
< tr>
< td>Id < /td>
< td>Nome < /td>
< td>Data < /td>
< td> < /td>
< td> < /td>
< /tr>
@foreach (var p paginas)
{
< tr>
< td>@p.Id < /td>
< td>@p.Nome < /td>
< td>@p.Data < /td>
< td> < a href="/paginas/@p.Id/editar" class = "btn btn-primary">Alterar Dados < /td>
< td> < a href="/paginas/@p.Id/excluir" class = "btn btn-danger">Excluir Dados < /td>
< /tr>
}
< /table>
< /div>
No arquivo de rotas vamos inserir a rota para excluir os dados que receberá o parâmetro do Id da página que iremos excluir.
routes.MapRoute(
"paginas_excluir",
"paginas/{id}/excluir",
new { controller = "Paginas", action = "Excluir", id = 0 }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Na controller Paginas criaremos uma nova rota Excluir, que receberá o parâmetro id.
namespace MVC_GerenciadorDeConteudo.Controllers
{
public class PaginasController : Controller
public ActionResult Index()
{
ViewBag.Paginas = new Pagina().Lista();
return View();
}
public ActionResult Novo()
{
return View();
}
[HttpPost]
public void Excluir(int id)
{
Pagina.Excluir(id);
Response.Redirect("/paginas");
}
}
Na classe Pagina, criaremos o método Excluir.
namespace Business
{
public class Pagina
{
public int Id { get;set };
public string Nome { get;set };
public string Conteudo { get;set };
public DateTime Data { get;set };
public static void Excluir()
{
new Database.Pagina().Excluir(id);
}
}
}
Método Excluir em Database, iremos executar exclusão.
namespace Database
{
public class Pagina
{
public void Excluir(int id)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
string queryString = delete from paginas where id = " + id;
}
SqlCommand command = new SqlCommand(queryString, connection);
command.Connection.Open();
command.ExecuteNonQuery();
}
}
}
}
Nesta aula iremos aprender como excluir dados de uma lista, criando a rota e a validação da confirmação para exclusão.
O objetivo da aula de hoje é fazer exclusão dos itens na lista.
Iremos criar uma nova coluna para excluir cada item. Nesta coluna vamos inserir o link que vai redirecionar para a rota de exclusão.
@{
ViewBag.Title = "home Page";
List< Business.Pagina> paginas = ViewBag.Paginas;
}
< div class = "jumbotron">
< h1>Paginas < /h1>
< div>
< a href="/paginas/novo" class = "btn btn-default"> Nova pagina < /a>
< /div
< table class = "table">
< tr>
< td>Id < /td>
< td>Nome < /td>
< td>Data < /td>
< td> < /td>
< td> < /td>
< /tr>
@foreach (var p paginas)
{
< tr>
< td>@p.Id < /td>
< td>@p.Nome < /td>
< td>@p.Data < /td>
< td> < a href="/paginas/@p.Id/editar" class = "btn btn-primary">Alterar Dados < /td>
< td> < a href="/paginas/@p.Id/excluir" class = "btn btn-danger">Excluir Dados < /td>
< /tr>
}
< /table>
< /div>
No arquivo de rotas vamos inserir a rota para excluir os dados que receberá o parâmetro do Id da página que iremos excluir.
routes.MapRoute(
"paginas_excluir",
"paginas/{id}/excluir",
new { controller = "Paginas", action = "Excluir", id = 0 }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Na controller Paginas criaremos uma nova rota Excluir, que receberá o parâmetro id.
namespace MVC_GerenciadorDeConteudo.Controllers
{
public class PaginasController : Controller
public ActionResult Index()
{
ViewBag.Paginas = new Pagina().Lista();
return View();
}
public ActionResult Novo()
{
return View();
}
[HttpPost]
public void Excluir(int id)
{
Pagina.Excluir(id);
Response.Redirect("/paginas");
}
}
Na classe Pagina, criaremos o método Excluir.
namespace Business
{
public class Pagina
{
public int Id { get;set };
public string Nome { get;set };
public string Conteudo { get;set };
public DateTime Data { get;set };
public static void Excluir()
{
new Database.Pagina().Excluir(id);
}
}
}
Método Excluir em Database, iremos executar exclusão.
namespace Database
{
public class Pagina
{
public void Excluir(int id)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
string queryString = delete from paginas where id = " + id;
}
SqlCommand command = new SqlCommand(queryString, connection);
command.Connection.Open();
command.ExecuteNonQuery();
}
}
}
}