Desenvolvimento - Visual Studio
Contando usuário em tempo real
Caro(a) Leitor(a), hoje vou falar como criar na sua aplicação um contador tempo real dos usuários que estão acessando; isto é; dá para saber quantas pessoas estão acessando, a qualquer momento, o seu site ou sistema online.
por Mauricio JuniorExistem 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 ou sistema, 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 precisei 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 foi 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 vai somando os valores e adicionando na variável. Para somar, usar 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 este 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
- OCR em Aplicações Universais: extraindo texto de imagensVisual Studio
- WinJS: Desenvolvendo para o Windows 10 com JavaScriptVisual Studio
- Entenda a navegação entre páginas em Universal AppsVisual Studio
- SplitView no Windows 10: Criando um menu hambúrguerVisual Studio
- Universal Apps: Compartilhando recursos entre projetosVisual Studio