terça-feira, 7 de fevereiro de 2012

Desativar tecla F5 e CRTL+R utilizando JavaScript

Para não permitir atualização da página no navegador Internet Explorer, podemos adicionar o seguinte código JavaScript entre da tag <head></head>.


 
<head runat="server">
      <title></title>
      <script language=javascript>    
         document.onkeydown = function () { 
           switch (event.keyCode) {
             case 116 :  
                event.returnValue = false;
                event.keyCode = 0;           
                return false;             
              case 82 : 
                if (event.ctrlKey) {  
                   event.returnValue = false;
                  event.keyCode = 0;             
                  return false;
           }
         }
    
     </script>
</head>

Este exemplo desativa o refresh em páginas web quando o usuário utilizar F5 ou CTRL + F5.

Ele funciona adicionando uma função onkeydown à página.

O event.keyCode, obtem qual botão foi precionado 116 para a tecla F5 e 82 para R.

O if para R verifica se o botão de controle foi pressionado ao mesmo tempo como R, marcando assim event.crtKey.

Entretanto, não tem como controlar o botão de atualização para a barra de endereço do navegador.

quinta-feira, 2 de fevereiro de 2012

Session

Uma sessão em asp.net serve para que possamos armazenar valores, como: login e senha de um usuário e depois resgatar e comparar com o banco de dados para verificar sua autenticidade. Também, podemos utilizar para  armazenar produtos em um carrinho de compras dentro da session e depois resgatar para finalizar a compra. Além disso, podemos transferir dados de uma página para outra.


1) Criar Sessão:

    Session["nomeDaSessao"] = "valorDaSessao";


2) Ler Sessão:

    string valorDaSessao = Session["nomeDaSessão"];

3) Definir Timeout:

    As sessões são aramazenadas por certo tempo enquanto a página está aberta. Depois deste tempo   
    elas expiram. Você pode utilizar o Session.Timeout para determinar quantos minutos a session    
    deve durar antes de expira

    Session.Timeout = 10;

4) Remover Sessão:

    Session.Remove["nomeDaSessão"];

5) Abandon():

Session.Abandon() - o método Abandon(), remove da memória todas as sessions criadas.





terça-feira, 24 de janeiro de 2012

Retornando valores para colunas Identity utilizando SQL Server

Existem três funções Transact-SQL:


SCOPE_IDENTITY - Retorna o último valor identity no escopo da execução atual.

@@IDENTITY - Contém o último valor identity gerado em qualquer tabela na sessão atual.

IDENTITY_CURRENT - Retorna o último valor identity gerado para uma tabela específica em qualquer sessão e qualquer escopo.

NOTA: Utilizamos o parâmetro output para retornar o valor do campo identity gerado pela função Transact-SQL SCOPE_IDENTITY



segunda-feira, 2 de janeiro de 2012

EMAIL - CRIANDO E ENVIANDO UM EMIAL




Enviar um email utilizando C# do ASP.NET é muito fácil


Primeiro precisamos importar as classes:
using System.Net;
using System.Net.Mail;


Em seguida, no evento click do botão btnEnviarEmail_Click, escrevemos o seguinte código:

MailMessage objEmail = new MailMessage();

bjEmail.From = new MailAddress("remetente@gmail.com");

objEmail.To.Add("destinatárion@gmail.com");

objEmail.Priority = System.Net.Mail.MailPriority.Normal;

objEmail.IsBodyHtml = true;

objEmail.Subject = "Teste";              
        string corpoEmail = "<html><head></head><body><div style='width:476px;min- height:300px; height:auto; border:1px solid #d7d7d7;'><div style='padding:20px; 
font-size:13px; font-family:Tahoma;'>";                 
corpoEmail = corpoEmail + "Olá <b style='color:#257cc7'>" + " Nome " + "</b>,<br><br>Você foi convidado por <b style='color:#257cc7'>" + "Alguém" + "</b> a participar de uma Promoção.<br><br>";             
corpoEmail = corpoEmail + "<a href='http://www.teste.com.br/loja/Detalhe.aspx?id=" + "id" + "' target='_blank' style='color:#257cc7'>Clique aqui</a> e escolha o melhor horário para você buscar o Prêmio.";               
corpoEmail = corpoEmail + "o id é " + 1;                        
corpoEmail = corpoEmail + "<br><br>";             
corpoEmail = corpoEmail + "Teste Ltda.";             
corpoEmail = corpoEmail + "</div></div></body></html>";
           
objEmail.Body = corpoEmail; 
            
objEmail.SubjectEncoding = System.Text.Encoding.GetEncoding("utf-8");

objEmail.BodyEncoding = System.Text.Encoding.GetEncoding("utf-8"); 

System.Net.Mail.SmtpClient objSmtp = new System.Net.Mail.SmtpClient();

objSmtp.Credentials = new NetworkCredential("usuário@gmail.com""senha");

objSmtp.Host = "smtp.gmail.com";

objSmtp.EnableSsl = true;
 
try
{
    objSmtp.Send(objEmail);
}
catch (Exception Ex)
{
    Console.WriteLine("Erro: " + Ex.ToString());           
}
finally
{
    objEmail.Dispose();
}

Note a importância de utilizarmos try/catch, para tratarmos caso ocorra algum tipo de excessão.


Também é necessário que você conheça pelo menos o básico de configuração de email, pois dependendo do provedor de emial existem configurações específicas.