當前位置:開發者網絡 >> 技術教程 >> .NET教程 >> Asp.Net開發 >> 內容
精彩推薦
分類最新教程
分類熱點教程
    
在.NET中使用靜態變量來代替Application變量
作者:未知
日期:2003-07-12
人氣:
投稿:Andy.m(轉貼)
來源:未知
字體:
收藏:加入瀏覽器收藏
以下正文:
wincheer|2002-3-1
--------------------------------------------------------------------------------


    在傳統的ASP程序中,我們總是使用Application對像來保存應用程序級的變量。這種方式比較耗費內存----看看那些空間供應商明目張膽的限制Application的數量就知道了。現在好了,我們有了.NET ,可以充分發揮靜態變量的優點。一方面,可以作為應用程序級的變量,另一方面,他的訪問速度要比Application對像更快。

    在.NET中, 大多數對象都是類, 包括Global.asax 也不例外.為了使用靜態變量來代替Application變量, 我們首先需要為Global.asax 賦予一個類名.通過以下方式:

    <%@ Application Classname="MyGlobals" %>

然後,然後我們在腳本標籤中定義靜態變量,注意 'Public' 和 'Shared' 關鍵字:

VB:
<Script language="vb" runat="server">

    Public Shared sGreeting as String = "Visit HarrisonLogic.com!"

</Script>

C#
<Script language="C#" runat="server">

    Public Static String sGreeting = "Visit HarrisonLogic.com!"

</Script>

現在我們已建立了 'sGreeting' 變量 set up,可以在.aspx 頁面中通過類名和變量名直接調用它:

x = MyGlobals.sGreeting

怎麼樣,是不是很方便?
================
源程序如下:
Global.asax
<%@ Application Classname="MyGlobals" %>

<Script language="vb" runat="server">

Public Shared sGreeting as String = "Visit HarrisonLogic.com!"

</Script>

page1.aspx

<% @Page Language="VB" %>
<HTML>
<HEAD>
<script Language='vb' runat=server>
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label1.Text = MyGlobals.sGreeting
End Sub
</script>
</HEAD>
<body>
<asp:label runat=server id=Label1></asp:label>
</body>
</HTML>

相關文章: