ASP.NET – Aplicação Web Básica – Mostrar, Adicionar, Editar e Apagar Dados – C# - aula 02


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace DaWebApp
{
    public class Menssagem
    {
        // Declara atributos
        private int id;
        private string nome;
        private string menssagem;

        // Construtor padrão
        public Menssagem() { }

        // Construtor Overload
        public Menssagem(int id, string nome, string menssagem)
        {
            // Inicializa valores;
            this.id = id;
            this.nome = nome;
            this.menssagem = menssagem;
        }

        // Propriedades
        public int Id
        {
            get
            {
                return id;
            }
            set
            {
                id = value;
            }
        }

        public string Nome
        {
            get
            {
                return nome;
            }

            set
            {
                nome = value;
            }
        }

        public string Msg
        {
            get
            {
                return menssagem;
            }
            set
            {
                menssagem = value;
            }
        }
    }
}
default.aspx

======================================================================
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="DaWebApp._default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    </div>
    </form>
</body>
</html>
default.aspx.cs


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace DaWebApp
{
    public partial class _default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["registros"] == null)
            {
                // Cria lista para o objeto
                List<Menssagem> msg = new List<Menssagem>();

                // Adiciona dados ao objeto
                msg.Add(new Menssagem(1, "Ricardo", "Olá Pessoal"));
                msg.Add(new Menssagem(2, "Mantovani", "Bem-vindos ao Desenvolvimento Aberto," +
                                      " adicione, altere e exclua dados desta tabela"));

                // Adiciona objeto a sessão
                Session["registros"] = msg;
            }

            // Cria pagina no método HTTP GET
            if (Request.HttpMethod.Equals("GET"))
            {
                doGet();
            }
        }
 ======================================================================
        private void doGet()
        {
            // Cria estilo CSS
            Response.Write("<head>");
            Response.Write("<style>");
            Response.Write("td, th {");
            Response.Write("border: none;");
            Response.Write("background-color: #dddddd;");
            Response.Write("padding: 5px;");
            Response.Write("width: 200px; }");
            Response.Write("</style>");
            Response.Write("</head>");

            // Titulo da pagina
            Response.Write("<h1>Desenvolvimento Aberto - Listas </h1>");

            // Cria tabela
            Response.Write("<table>");
            Response.Write("<tr>");
            Response.Write("<th>ID:</th>");
            Response.Write("<th>Nome:</th>");
            Response.Write("<th>Comentário:</th>");
            Response.Write("<th>Ação:</th>");
            Response.Write("</tr>");

            // Recupera objeto da sessão
            List<Menssagem> registros = (List<Menssagem>)Session["registros"];

            // Itera objeto
            foreach (Menssagem reg in registros)
            {
                Response.Write("<tr>");
                Response.Write("<td>" + reg.Id + "</td>");
                Response.Write("<td>" + reg.Nome + "</td>");
                Response.Write("<td>" + reg.Msg + "</td>");

                // Link de edição
                Response.Write("<td><center>");
                Response.Write("<a href='udados.aspx?identificador=" + reg.Id + "'>Editar</a> | ");
                Response.Write("<a href='ddados.aspx?identificador=" + reg.Id + "'>Apagar</a>");
                Response.Write("</center></td>");
                Response.Write("</tr>");
            }

            Response.Write("</table>");

            // Define link para formulario de adicionar dados
            Response.Write("<P> <a href='adados.aspx'>Adicione um comentário</a> </p>");
        }
    }
}
adados.aspx
======================================================================

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="adados.aspx.cs" Inherits="DaWebApp.adados" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <h1>Desenvolvimento Aberto - Adiciona Menssagem</h1>
    <form id="form1" runat="server">
    <div>

        <asp:Label ID="Label2" runat="server" Text="Id:entificador  "></asp:Label>
        <br />
        <asp:TextBox ID="TextBox1" runat="server" Width="135px"></asp:TextBox>
        <br />

        <asp:Label ID="Label1" runat="server" Text="Nome:"></asp:Label>
        <br />
        <asp:TextBox ID="TextBox2" runat="server" Width="229px"></asp:TextBox>
        <br />
        <br />
        <asp:TextBox ID="TextBox3" runat="server" Height="118px" TextMode="MultiLine" Width="269px"></asp:TextBox>

        <br />
        <br />
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Adicionar" Width="274px" />

    </div>
    </form>
</body>
</html>
======================================================================
adados.aspx.cs


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace DaWebApp
{
    public partial class adados : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            // recupera parametro
            string parametro = Request.QueryString["identificador"];

            // Recupera objeto da sessão
            List<Menssagem> registros = (List<Menssagem>)Session["registros"];

            // Adiciona registros
            registros.Add(new Menssagem(Convert.ToInt32(TextBox1.Text), TextBox2.Text, TextBox3.Text));
            Response.Redirect("default.aspx");
        }
    }
}
udados.aspx


<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="udados.aspx.cs" Inherits="DaWebApp.udados" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <h1>Desenvolvimento Aberto - Altera Dados</h1>
    <form id="form1" runat="server">
    <div>
        <asp:Label ID="Label1" runat="server" Text="Identificador:"></asp:Label>
        <br />
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <br />
        Nome:<br />
        <asp:TextBox ID="TextBox2" runat="server" Width="194px"></asp:TextBox>
        <br />
        <br />
        <asp:Label ID="Label2" runat="server" Text="Menssagem:"></asp:Label>
        <br />
        <asp:TextBox ID="TextBox3" runat="server" Height="122px" TextMode="MultiLine" Width="209px"></asp:TextBox>

        <br />
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Alterar" Width="112px" />

    </div>
    </form>
</body>
</html>
======================================================================
udados.aspx.cs


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace DaWebApp
{
    public partial class udados : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            // Verifica se a resposta não é um postback
            if (!IsPostBack)
            {
                // Recupera parametro
                string parametro = Request.QueryString["identificador"];

                // Alinha ID com indice da lista
                int id = Convert.ToInt32(parametro);
                id -= 1;

                // Recupera objeto da sessão
                List<Menssagem> registros = (List<Menssagem>)Session["registros"];

                // Exibe objeto
                if (Session["registros"] != null)
                {
                    TextBox1.Text = Convert.ToString(registros[id].Id);
                    TextBox2.Text = registros[id].Nome;
                    TextBox3.Text = registros[id].Msg;
                }
            }
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            // Recupera parametro
            string parametro = Request.QueryString["identificador"];

            // Alinha ID com o indice
            int id = Convert.ToInt32(parametro);
            id -= 1;

            // Recupera obeto da sessão
            List<Menssagem> registros = (List<Menssagem>)Session["registros"];

            // Altera propriedades da  lista
            registros[id].Id = Convert.ToInt32(TextBox1.Text);
            registros[id].Nome = TextBox2.Text;
            registros[id].Msg = TextBox3.Text;

            // Redireciona pagina
            Response.Redirect("default.aspx");

        }
    }
}
======================================================================
ddados.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ddados.aspx.cs" Inherits="DaWebApp.ddados" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    </div>
    </form>
</body>
</html>
ddados.aspx.cs
======================================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace DaWebApp
{
    public partial class ddados : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            // Recupera parametro
            string parametro = Request.QueryString["identificador"];

            // Alinha ID com indice da lista
            int id = Convert.ToInt32(parametro);
            id -= 1;

            // Recupera objeto da sessão
            List<Menssagem> registros = (List<Menssagem>)Session["registros"];

            // Remove registro da lista
            registros.RemoveAt(id);

            // Alinha indice com ID
            id += 1;

            // Define Menssagem ao usuario
            Response.Write("<h1>Desenvolvimento Aberto</h1>");
            Response.Write("Registro: ID:" + id + " removido com sucesso <br>");
            Response.Write("<a href='default.aspx'>Voltar</a>");

        }
    }
}

Nenhum comentário:

Postar um comentário