Click here to Skip to main content
13,356,787 members (59,370 online)
Click here to Skip to main content
Add your own
alternative version


27 bookmarked
Posted 19 Feb 2007

A simple ASP.NET chat

, 18 Feb 2007
Rate this:
Please Sign up or sign in to vote.
A simple chat application using ASP.NET.


This article describes how to create a chat application. In this application, a total of six pages are used.

Main Page

This page has three frames. The first frame will show the user information and the typed messages (left side). The right side frame will show how many users are online now and their names. The bottom side of the frame will show a textbox with a logout button.

There are three types of objects to store the user information and data:

  • Session
  • Cookies
  • Application

The Session object is used for storing a particular user's information in the server side. The Cookies object is used for storing a particular user's information in a particular client side. And, the Application object can be used across the network.

In this application, I have used the Session object for the login method.


This will create a Session object in the server side. We can check the user's credentials by using this object.(Authentication).

After checking the user's credentials, the application object is created like this:

Application("Chat")=Application("Chat") & name & "$"

If the user types something in the textbox, the form gets refreshed and the Application("chat") value is changed with the new value, and the list of Application("chat") arrays are shown in the main display page.

Th user's input will displayed by using the auto-refresh method in the meta HTTP object.

<meta http-equiv="refresh" content="4">

This will make the page refresh.

List of Users

Application("Users") is used to count the number of users online. The count is taken by splitting the special characters in application("users").

Screenshot - chat.png


This logout page is used to clear the session of the user and remove the user name from application("users"). So, the user can close his session from the chat. For private chat, application(user & session("user")) is used to differentiate the other users from the current user.

The left side of the main page shows all the users; when we click on a user, the private page will show a new page with the requested user.

if Con.State = ConnectionState.Open Then Con.Close()
name = rdname(0)
Con.State = ConnectionState.Open Then Con.Close()Dim cmd_name As New SqlCommand(
   "Select Emp_Name From UserAccounts_Master Where UserId = '" & Session("UserId") & "'",
   Con)Dim rdname As SqlDataReader = cmd_name.ExecuteReaderWhile rdname.ReadEnd While 
If name <> "" Then If Application("invite") = name Then 
Response.Write("<script language="'javascript'">{ window.alert(
    '" & Application("invite") & "," & Application("whom") & " invited you to chat') } 
Application("invite") = " "
'Dim focusString As String = ("<script language="'javascript'">{ window.alert(
   '" & Application("invite") & "," & Application("whom") & " invited you to chat') }
</script>") 'Page.RegisterStartupScript("FocusScript",
    focusString) 'Session.Timeout = 20000 End If End If 

Try this. Thanks!


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

sathesh pandian
Technical Lead
India India
have been working in web technologies for the last 8 years.

You may also be interested in...

Comments and Discussions

Generalplz help Pin
harivinod13-Feb-08 15:26
memberharivinod13-Feb-08 15:26 
GeneralRe: plz help Pin
sravanibhanu19-Mar-08 22:33
membersravanibhanu19-Mar-08 22:33 
GeneralRe: plz help Pin
sathesh_pandian21-Apr-08 23:21
membersathesh_pandian21-Apr-08 23:21 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.180111.1 | Last Updated 19 Feb 2007
Article Copyright 2007 by sathesh pandian
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid