🔥 Apps, books, system as a service, podcast and more



Contando acessos

      Caro(a) Leitor(a), hoje vou falar e mostrar como criar na sua aplicação um contador que funciona em tempo real dos usuários que estão acessando, mesmo os usuários não cadastrados; isto é; dá para saber quantas pessoas estão acessando, a qualquer momento, o seu site ou sistema online.

Cada figura neste artigo mostra o passo a passo para que não perca nenhum detalhe.

Tag: Global, C#.NET, Visual Studio

       Existem várias maneiras de fazer isso, hoje o Google Analytics tem uma opção para saber quantos usuários estão online. Existe uma outra maneira que é o desenvolvimento na aplicação usando o Global.asax.cs.

       No Google Analytics, você precisa colocar algumas linhas de código javascript no site, depois basta acompanhar a quantidade de usuário no menu Tempo Real que ainda está na versão beta. Figura 1.
Figura 1. Google Analytics


        No próprio site do Google Analytics existe a opção de criar o arquivo de javascript. Você pode também confiar diretamente no seu aplicativo somando automaticamente. Para isso, o primeiro passo é criar o arquivo Global.asax.cs.

        O primeiro passo foi criar o arquivo Global.asax. Figura 2.
        Figura 2. Botão direito em cima do projeto




         Cliquei com o botão direito em cima do projeto, escolhi o submenu Add e em seguida o New Item... A próxima tela basta escolher o tipo do arquivo. Figura 3.

          Figura 3. Escolha do tipo do arquivo.


          Dentre os vários tipos, escolhi o Global Application Class, deixei o mesmo nome e cliquei no botão Add. Apareceu no projeto o arquivo com vários métodos criados. Listagem 1.

          Listagem 1: Métodos criados automaticamente.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.SessionState;

namespace WebApplication3

{

public class Global : System.Web.HttpApplication

{

protected void Application_Start(object sender, EventArgs e)

{

}

protected void Session_Start(object sender, EventArgs e)

{

}

protected void Application_BeginRequest(object sender, EventArgs e)

{

}

protected void Application_AuthenticateRequest(object sender, EventArgs e)

{

}

protected void Application_Error(object sender, EventArgs e)

{

}

protected void Session_End(object sender, EventArgs e)

{

}

protected void Application_End(object sender, EventArgs e)

{

}

}

}



           Para gerar o contador automático, vou utilizar pelo menos três destes métodos já criados pelo Framework e Visual Studio. O primeiro passo é criar uma variável chamada contador de acessos dentro do método Application_Start.

           É necessário criar dentro do Application_Start, isso porque quando a aplicação for iniciada a primeira vez, a variável começa com o valor zero. Você pode colocar o nome que quiser. Listagem 2.
Listagem 2: Application_Start

protected void Application_Start(object sender, EventArgs e)

{

Application["ContadorAcessos"] = 0;

}


            É necessário usar ainda dois métodos da classe Global para somar e diminuir o valor da variável. A cada acesso, o sistema soma os valores e adicionando na variável. Para somar, use o método Session_Start. Listagem 3.

Listagem 3: Somando valores e atribuindo a variável.

protected void Session_Start(object sender, EventArgs e)

{

Application["ContadorAcessos"] = (int)(Application["ContadorAcessos"]) + 1;

}



              Quando um usuário sai do site, é necessário diminuir o valor de forma automática e simples. O método utilizado é o Session_End, ou seja, quando a sessão do usuário for finalizada. Listagem 4.
Listagem 4: Diminuindo valores.

protected void Session_End(Object sender, EventArgs e)

{

Application["ContadorAcessos"] = (int)(Application["ContadorAcessos"]) - 1;

}

              Depois de somar e diminuir os valores, basta usar a variável dentro de qualquer parte do código, aspx, vb, c# e outros. Basta usar Application[“ContadorAcessos”].ToString(). A fim de deixar mais organizado o código para entendimento, segue todo o código construído. Listagem 5.
Listagem 5. Todo o código da classe.

protected void Session_Start(object sender, EventArgs e)

{

Application["ContadorAcessos"] = (int)(Application["ContadorAcessos"]) + 1;

}

protected void Session_End(Object sender, EventArgs e)

{

Application["ContadorAcessos"] = (int)(Application["ContadorAcessos"]) - 1;

}

protected void Application_Start(object sender, EventArgs e)

{

Application["ContadorAcessos"] = 0;

}



Bom, espero que tenha gostado e qualquer dúvida pode entrar em contato pelo site pessoal www.mauriciojunior.org



Sign up to our newsletter

Receive our latest updates about programming languages, software, database, books, ebooks, classes, jobs and more.

Top