日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Aplication对象 简单聊天室(16)

發(fā)布時間:2024/3/26 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Aplication对象 简单聊天室(16) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
使用Application對象可以使得多個用戶在訪問同一個asp.net應(yīng)用程序時,能夠共享信息,在多個用戶同時訪問asp.net時,都會 產(chǎn)生一個Application對象。通常可以把共享的數(shù)據(jù)變量存儲在Application對象的集合中,這些變量可以在站點應(yīng)用程序所有的頁面上被所 有的客戶端訪問,這樣就是所有的客戶端公用一個Application對象,網(wǎng)站服務(wù)器被開啟時,Application就會被創(chuàng)建,利用共享這一特性, 我們可以創(chuàng)建簡單的聊天室以及網(wǎng)站計數(shù)器。 Application對象常用的方 法:
方法 說明
Add向Application添加新的對象
Clear移除Application中所有的對象
Remove按名稱移除Application集合中對象
Lock禁止其他用戶修Application對象記錄的變量值
Unlock允許其他用戶修Application對象記錄的變量值
Application最常見的應(yīng)用就是聊天室,下面創(chuàng)建一個簡單的聊天室演示Application的應(yīng)用。 html代碼: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Application._Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>聊天室</title>
<meta http-equiv="refresh" content="5;url=Default.aspx"/>
</head>
<body>
<form id="form1" runat="server" method="post">
<div style="text-align:center">簡單的聊天室</div>
<hr style="color:Red"/>
聊天內(nèi)容:<br />
<%Response.Write(Application["chat"]); %><!通過response對象的write方法將application對象中存儲的聊天信息進行輸出>
<hr style="color:Blue"/>
小敏對
<asp:DropDownList ID="friend" runat="server" Width="90px">
<asp:ListItem Value="小李">小李</asp:ListItem>
<asp:ListItem Value="小軍">小軍</asp:ListItem>
<asp:ListItem Value="小麗">小麗</asp:ListItem>
</asp:DropDownList>說:
<asp:TextBox ID="content" runat="server" Height="127px" Width="263px"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="提交" οnclick="Button1_Click1" />
</form>
</body>
</html> html代碼中<meta? http-equiv="refresh" content="5;url=Default.aspx"/>意思是網(wǎng)頁每五秒刷新一次,并跳轉(zhuǎn)到Default.aspx頁面 c#后臺代碼: using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

namespace Application
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}


protected void Button1_Click1(object sender, EventArgs e)
{

string name = "小敏";
string char_str = name + "" + Request["friend"] + "說:" + Request["content"] + "<br/>";
Application.Lock();//先用Lock將application鎖住,進行修改;
Application["chat"] = Application["chat"] + char_str;
Application.UnLock();//然后再把application對象鎖打開;
this.content.Controls.Clear();//點擊“提交”按鈕提交信息后自動清除用戶輸入內(nèi)容;
}
}
} 當用戶點擊“提交”按鈕時,會觸發(fā)一個事件,該事件會把用戶輸入的信息保存到Application對象中,有因為Application對象是一個保存 共享信息的對象,所以每個用戶想修改信息時,就會出現(xiàn)混亂,導(dǎo)致數(shù)據(jù)不一致,為了防止此問題的發(fā)生,這里利用了lock和unlock方法,相擁lock 把Application鎖住,再進行修改,最后使用unlock把鎖打開; 用火狐打開預(yù)覽的效果圖:

本文轉(zhuǎn)自shenzhoulong ?51CTO博客,原文鏈接:http://blog.51cto.com/shenzhoulong/313780,如需轉(zhuǎn)載請自行聯(lián)系原作者

總結(jié)

以上是生活随笔為你收集整理的Aplication对象 简单聊天室(16)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。