curso pr-tico de ms visual studio[1] net 2005
330 pág.

curso pr-tico de ms visual studio[1] net 2005

Disciplina:Tecnologias Web2.419 materiais7.000 seguidores
Pré-visualização35 páginas
Referência: 1-2

Dentro da classe, já dentro do código C#.NET, criarei um método para

gerar em arquivo excel. Será chamada depois do objeto label for

preenchido. Note que é bem simples, dessa forma poderei fazer qualquer

relatório ser mostrado no excel.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

Referência: 1-3

Segue o código:

protected void Page_Load(object sender, EventArgs e)

{

 lblExcel.Text = "Teste <br> teste <br> gerando excel <br>";

 geraExcel();

}

protected void geraExcel()

{

Response.Clear();

Response.Buffer = true;

Response.ContentType = "application/vnd.ms-excel";

Response.Charset = "";

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

this.EnableViewState = false;

System.IO.StringWriter oStringWriter = new

System.IO.StringWriter();

System.Web.UI.HtmlTextWriter oHtmlTextWriter = new

System.Web.UI.HtmlTextWriter(oStringWriter);

Response.Write(oStringWriter.ToString());

}

Explicando o código:

Na entrada da página, preencho o label com um texto aleatório como

"Teste <br> teste <br> gerando excel <br>"; . A linha debaixo,

chamo o método criado para gerar o arquivo excel. O método chama-se

geraExcel() que já faz o mesmo virar um arquivo excel. O segredo do

método é a linha Response.ContentType = "application/vnd.ms-

excel"; . Note que a assinatura do método é, protected protegido e void,

não retorna valor algum.

Não esqueça de colocar a página como página inicial do projeto e inicie o

projeto.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

Referência: 1-4

Clique em OPEN e espere alguns segundos.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

Referência: 1-5

A figura 1-5 mostra resultado acima do código criado. Pode ser feito

qualquer relatório com qualquer objeto na tela, depois é só chamar o

método para gerar o relatório.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

Orientação a Objetos com Visual Studio.NET (parte 2)

Olá pessoal, como foi dito anteriormente, essa segunda parte será bem

simples. Mostra que depois do cadastro do usuário é enviado um e-mail

automaticamente. Antes de tudo irei criar duas novas classes para o

projeto. Uma se chamará ConstantesSistema.cs e a outra

EnviaEmail.cs.

A primeira classe armazena as variáveis do sistema para enviar e-mail.

A segunda classe terá dois métodos para enviar e-mail automaticamente.

A classe EnviaEmail.cs estende da classe ConstantesSistema.cs, ou

seja, todas as variáveis e métodos criados na classe estendida poderá ser

acessado e usado na classe de e-mail.

Referência: 1.1

As duas classes circuladas na figura 1.1 mostra que serão usadas.

Seguindo com o sistema, a figura 1.2 é mostrada apenas as variáveis.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

Referência: 1.2

Segue a descrição abaixo para facilitar a copia.

public class ConstantesSistema

{

 public string MAIL_DE = "EMAIL QUE IRÁ ENVIAR";

 public string PW_DE = "SENHA DO EMAIL";

 public string SMTP_MAIL = "SMTP DO SERVIDOR DE EMAIL";

 public string SMTP_AUT = "1";

}

Explicando as variáveis:

MAIL_DE é o e-mail que estará no campo e-mail de. Imagine mandando

um e-mail, sempre o seu e-mail estará no campo e-mail de.

PW_DE é a senha do e-mail que enviará.

SMTP_MAIL é o smtp do servidor de e-mail que tens, por exemplo,

smtp.terra.com.br.

SMTP_AUT é o tipo da autenticação, ou seja, numero 1.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

É bem simples a classe ConstantesSistema.cs.

Referência: 1.3

Continuando e indo para a classe de E-mail, irei inserir dois métodos, um

para autenticar e outro para enviar o e-mail propriamente dito.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

Referência: 1.4

A figura 1.4 mostra o método que envia e-mail. Analisando a assinatura do

método, veja que não retorna valor algum e espera quatro parâmetros de

entrada. Segue o código.

/// <summary>

 /// Envia e-mail automaticamente

 /// </summary>

 /// <param name="usuarioNome"></param>

 /// <param name="usuarioEmail"></param>

 /// <param name="descricaoEmail"></param>

 /// <param name="tituloEmail"></param>

 public void enviarEmail(string usuarioNome, string

usuarioEmail,

 string descricaoEmail, string tituloEmail)

 {

 try

 {

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

 MailMessage mail = new MailMessage();

 mail.From = MAIL_DE;

 mail.To = usuarioEmail;

 mail.Subject = tituloEmail;

 mail.BodyFormat = MailFormat.Html;

 mail.Body = descricaoEmail;

 getAutenticacao(mail);

 SmtpMail.SmtpServer = SMTP_MAIL;

 SmtpMail.Send(mail);

 }

 catch (Exception e)

 {

 throw new Exception(e.Message);

 }

 }

Explicando os parâmetros de entrada:

usuarioNome: é o nome do usuário que receberá o e-mail.

usuarioEmail: é o e-mail do usuário que irá receber.

descricaoEmail: é a descrição do e-mail que irá ao corpo da mensagem.

tituloEmail: é o titulo que irá no e-mail enviado.

Isso tudo, usarei dentro do bloco try do método. O método catch pega o

erro que ocorrer. Primeiro instancio o método da classe using

System.Web.Mail; chamado MailMessager. O nome da variável chama-se

mail. Portanto uso-a para atribuir os parâmetros e valores em seus

respectivos campos.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

try

 {

 MailMessage mail = new MailMessage();

 mail.From = MAIL_DE;

 mail.To = usuarioEmail;

 mail.Subject = tituloEmail;

 mail.BodyFormat = MailFormat.Html;

 mail.Body = descricaoEmail;

 getAutenticacao(mail);

 SmtpMail.SmtpServer = SMTP_MAIL;

 SmtpMail.Send(mail);

 }

Não esqueça de que uso as variáveis da classe constantesSistema. Isso

economiza muita coisa, se o e-mail ou senha ou smtp mudar, apenas será

mudado em um local, ou seja, na classe ConstantesSistema.cs.

A linha que está em amarelo é um outro método que serve para autenticar

a mensagem que será enviada.

private void getAutenticacao(MailMessage mail)

 {

 mail.Fields["http://schemas.microsoft.com/cdo/configuration

/smtpauthenticate"] = SMTP_AUT;

 mail.Fields["http://schemas.microsoft.com/cdo/configuration

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos e em sala de aula.
http://www.mauriciojunior.org

/sendusername"] = MAIL_DE;

 mail.Fields["http://schemas.microsoft.com/cdo/configuration

/sendpassword"] = PW_DE;

 }

Veja que estou usando as variáveis da outra classe.

Pronto, agora já foram criadas as duas classes que precisava para enviar e-

mail automaticamente.

Referência: 1.5

Vá para a classe Default.aspx e depois que o cadastro foi feito, dentro do

bloco if instancie o método da classe de e-mail passando os parâmetros.

Veja como ficará o mesmo abaixo.

Curso Prático Visual Studio.NET 2005

Este material não pode ser usado em treinamentos