婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 實現Asp與Asp.Net共享Session的方法

實現Asp與Asp.Net共享Session的方法

熱門標簽:百度地圖怎樣做地圖標注 浦發電話機器人提醒還款 征途美甲店地圖標注 騰訊地圖標注手機 太原400電話上門辦理 柳州電銷機器人公司 400電話如何申請取消 電銷語音機器人型號參數 昆明語音電銷機器人價格
iframe align="top" marginwidth="0" marginheight="0" src="http://www.zealware.com/46860.html" frameborder="0" width="468" scrolling="no" height="60">/iframe>

在.net中,Session的存儲機制已經與Asp的存儲機制不一樣,雖然可以在同一個IIS下同時運行asp與aspx,但是它們之間不能傳遞Session。
之前大批系統應用到了asp,在升級過程中,如果完全拋棄asp來重寫,一來工作量太大,二來以前的成果不能保存下來。
所以微軟提出了一個Session共享的解決方案,只是此文檔光說明原理,并沒有說具體的操作步驟,由此,我撰文描述過程。

簡單說明原理,asp與asp.net之間的Session統一存儲在數據庫中來實現共享

1、創建數據表
打開SQL Server查詢分析器,運行以下腳本來創建數據表,數據表名為SessionState

if exists (select * from sysobjects where id = object_id(N'[dbo].[SessionState]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) 
drop table [dbo].[SessionState] 
GO 

create TABLE [dbo].[SessionState] ( 
[ID] uniqueidentifier NOT NULL , 
[Data] [image] NOT NULL , 
[Last_Accessed] [datetime] NOT NULL 
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] 
GO 

alter TABLE [dbo].[SessionState] WITH NOCHECK ADD 
CONSTRAINT [PK_SessionState] PRIMARY KEY NONCLUSTERED 
( 
[ID] 
) ON [PRIMARY] 
GO

2、下載以下文件 Session.rar

將文件解壓后,將產生4個文件,分別作如下操作。
復制 global.asa 到系統根目錄下,并打開文件,修改Application("SessionDSN") 為合適的數據庫鏈接字符串,如果系統本身已經有了global.asa,則在此文件中添加如下Application:
Application("SessionDSN") = "initial catalog=SqlServerName;persist security info=False;user id=sa;password=****;packet size=4096"
在系統的 Web.config 文件中,添加此項
add key="SessionDSN" value="data source=SqlServerName;initial catalog=SessionDemoDb;persist security info=False;user id=SessionDemoDbUser;password=****;packet size=4096">/add>
并將其值修改為合適的數據庫鏈接。
將另外兩個dll文件復制到系統目錄下(或其他合適目錄)

3、關閉IIS中Asp的Session選項
打開IIS,選擇站點,依次選擇屬性 -> 主目錄 -> 配置 -> 應用程序選項,將啟用會話狀況前的復選勾去除。如下圖:
screen.width-350)this.width=screen.width-350" border=0>

4、安裝SessionUtility.dll
首先找到 gacutil.exe 文件,一般情況下在 Microsoft Visual Studio .NET 2003\SDK\v1.1\Bin 目錄下
在命令提示符窗口中,執行 gacutil /i SessionUtility.dll,(如果執行失敗,請將這兩個文件的路徑都寫全了)

5、注冊SessionUtility.dll為Com對象
同樣,要找到 regasm.exe 文件,一般情況下在 WINNT\Microsoft.NET\Framework\v1.1.4322 目錄下
在命令提示符窗口中,執行 regasm.exe SessionUtility.dll /tlb:SessionUtility.tlb,(如果執行失敗,請將這兩個文件的路徑都寫全了)
這樣就會產生出一個tlb文件,可當做普通的Com組件來調用。

6、注冊SessionManager.dll
這個很簡單了,在命令提示符窗口中,執行regsvr32 SessionManager.dll

7、如果是NTFS格式的系統,請找到 SessionMgr.dll,右鍵點擊,屬性,將IUSR_machine_name>權限設置為可讀和可執行。 至此,我們已經可以實現了Asp與Asp.net之間Session共享了,那么怎么去用 在Asp中,我們要如下使用: br>頁面開始端 br>Dim Session br>Set Session = Server.createObject("SessionMgr.Session2") br>Session("UserID") = ... br>... br>... br>... br>頁面結束端 br>Set Session = Nothing '記得一定要釋放哦 而在Asp.net中,我們要如下使用: br>首先,我們要添加對SessionUtility的引用 br>然后,編碼時,原來是這樣的繼承 public class WebForm1 : System.Web.UI.Page,修改為public class WebForm1 : MSDN.SessionPage br>這樣在編碼過程中就可以使用Session("UserID")這樣的形式了。 注意:雖然Session實現了共享,但是Session的使用語法,相對于.net中新增的部分,就沒有實現,畢竟要照顧asp br>譬如Session.Remove,就不能用了。p id="TBPingURL">Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1621435/p> br>/machine_name>

您可能感興趣的文章:
  • ASP.NET 程序中刪除文件夾導致session失效問題的解決辦法分享
  • asp.net 刪除項目文件/文件夾IIS重啟,Session丟失問題
  • asp.net基于session實現購物車的方法
  • ASP.NET 使用application與session對象寫的簡單聊天室程序
  • ASP.NET ASHX中獲得Session的方法
  • ASP.NET中在一般處理程序中使用session的簡單介紹
  • Asp.Net程序目錄下文件夾或文件操作導致Session失效的解決方案

標簽:新疆 陽泉 德陽 江蘇 蘭州 天門 張家界 白山

巨人網絡通訊聲明:本文標題《實現Asp與Asp.Net共享Session的方法》,本文關鍵詞  實現,Asp,與,Asp.Net,共享,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《實現Asp與Asp.Net共享Session的方法》相關的同類信息!
  • 本頁收集關于實現Asp與Asp.Net共享Session的方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 且末县| 子长县| 宁都县| 锦屏县| 开阳县| 康马县| 南江县| 四会市| 新竹县| 黎川县| 新昌县| 怀化市| 乐至县| 连平县| 中江县| 文水县| 罗源县| 肃南| 尉氏县| 柏乡县| 新巴尔虎左旗| 浠水县| 循化| 独山县| 利津县| 新营市| 罗平县| 元江| 牡丹江市| 万宁市| 老河口市| 南充市| 赤壁市| 上林县| 漳平市| 根河市| 丹东市| 阳泉市| 通山县| 延庆县| 兴城市|