Segue os dados da página:
TextBox
Id = txtNome
TextBox
Id = txtEmail
Button
Id = cmdCriar
Text = Criar Cookie
Para ficar melhor ainda, o código fonte da página está disposto logo em seguida:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Gerando cookie</title>
</head>
<body>
<form id="formCookie" runat="server">
<div>
<h3>Gerando cookie com VS 2005.</h3>
Nome: <asp:TextBox ID="txtNome" runat="server"></asp:TextBox> <br />
E-mail: <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
<br /><br />
<asp:Button ID="cmdCriar" Text="Criar Cookie" runat="server" OnClick="cmdCriar_Click" />
<br /><br />
</div>
</form>
</body>
</html>
Dentro da classe .cs agora, criei um método protected chamado CriarCookie, passando dois valores; nome e email.

Código fonte:
/// <summary>
/// Método que cria o cookie do seu sistema
/// </summary>
/// <param name="nome">nome qualquer</param>
/// <param name="email">email qualquer</param>
protected void CriarCookie(string nome, string email)
{
//criando cookie
//esse nome website1 pode ser qualquer nome que quiser, porém,
//é necessário um nome
HttpCookie cookie = new HttpCookie("website1");
//cria cookie com o ip da maquina
cookie.Values.Add("IP", Request.UserHostAddress.ToString());
cookie.Values.Add("NOME", nome);
cookie.Values.Add("EMAIL", email);
//colocando o cookie para expirar daki um dia
cookie.Expires = DateTime.Now.AddDays(1);
Response.AppendCookie(cookie);
}
Explicando código:
HttpCookie cookie = new HttpCookie("website1");
Esta linha cria o cookie dentro do computador de um usuário. Esse nome website1, foi escolhido por mim, ou seja, pode colocar qualquer nome dentro desses parênteses, o que quiser colocar.
//cria cookie com o ip da maquina
cookie.Values.Add("IP", Request.UserHostAddress.ToString());
cookie.Values.Add("NOME", nome);
cookie.Values.Add("EMAIL", email);
Estas três linhas apenas adicionam valores dentro do arquivo do cookie. Existe um nome e valor, por exemplo: dentro do meu cookie terá um nome chamado NOME (em maiúsculo) = ao valor que adicionei. NOME=MAURICIOJUNIOR, da mesma forma terá um valor para o EMAIL=MAURICIO@ASPNETI.COM.
//colocando o cookie para expirar daki um dia
cookie.Expires = DateTime.Now.AddDays(1);
Response.AppendCookie(cookie);
A linha EXPIRES significa apenas que esse cookie irá expirar no próximo dia, ou seja, fiz a soma do dia de hoje mais um. O comando APPENDCOOKIE apenas gera o cookie, ou seja, efetivamente gera o cookie dentro do pc em uma pasta meio escondida.
O próximo método é o do botão.
Código fonte:
protected void cmdCriar_Click(object sender, EventArgs e)
{
CriarCookie(txtNome.Text, txtEmail.Text);
}
Nesse método, chamo o outro método para criar o cookie passando os valores. As próximas figuras mostram o funcionamento da aplicação.
Cliquei no botão gerar cookie, veja a figura com o resultado.
Acessei a pasta e lá está o cookie gerado com os dados dentro.

Espero que tenha gostado e aprendido muito como eu aprendi.
Mauricio Junior
www.aspneti.com
www.ascompras.com
mauricio@aspneti.com
