Asp和.NET如何共享Session存儲(chǔ)機(jī)制
2010/8/19 15:58:50

  
  以前網(wǎng)站制作大部分使用ASP語言,當(dāng)ASP升級(jí)為.NET后,Session存儲(chǔ)機(jī)制已經(jīng)不一樣了,雖然在IIS下能夠同時(shí)運(yùn)行,但是他們之間傳遞是不可能的,要是重新開發(fā)工作量太大,那么Asp和.NET如何共享Session存儲(chǔ)機(jī)制呢?
  Asp與Asp.net之間Session共享怎樣使用
  在Asp中,我們要如下使用:
  頁面開始端
  Dim Session
  Set Session = Server.createObject("SessionMgr.Session2")
  Session("UserID") = ...
  ...
  ...
  ...
  頁面結(jié)束端
  Set Session = Nothing '記得一定要釋放哦
  在Asp.net中,我們要如下使用:
  首先,我們要添加對(duì)SessionUtility的引用,然后,編碼時(shí),原來是這樣的繼承 public class WebForm1 : System.Web.UI.Page,修改為public class WebForm1 : MSDN.SessionPage,這樣在編碼過程中就可以使用Session("UserID")這樣的形式了。
    具體流程:
  1、創(chuàng)建數(shù)據(jù)表
  打開SQL Server查詢分析器,運(yùn)行以下腳本來創(chuàng)建數(shù)據(jù)表,數(shù)據(jù)表名為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,將文件解壓后,將產(chǎn)生4個(gè)文件,分別作如下操作。
  復(fù)制 global.asa 到系統(tǒng)根目錄下,并打開文件,修改application("SessionDSN") 為合適的數(shù)據(jù)庫鏈接字符串,如果系統(tǒng)本身已經(jīng)有了global.asa,則在此文件中添加Application("SessionDSN") = "initial catalog=SqlServerName;persist security info=False;user id=sa;passWord=****;packet size=4096"
  在系統(tǒng)的 Web.config 文件中,添加:
  <add key="SessionDSN" value="data source=SqlServerName;initial catalog=SessionDemoDb;persist security info=False;user id=SessionDemoDbUser;password=****;packet size=4096" />
  并將其值修改為合適的數(shù)據(jù)庫鏈接。將另外兩個(gè)dll文件復(fù)制到系統(tǒng)目錄下。
  3、關(guān)閉IIS中Asp的Session選項(xiàng)
  打開IIS,選擇站點(diǎn),依次選擇屬性 -> 主目錄 -> 配置 -> 應(yīng)用程序選項(xiàng),將啟用會(huì)話狀況前的復(fù)選勾去除。
  screen.width-350)this.width=screen.width-350" border=0>
  4、安裝SessionUtility.dll
  首先找到 gacutil.exe 文件,一般情況下在 Microsoft Visual Studio .NET 2003\SDK\v1.1\Bin 目錄下,在命令提示符窗口中,執(zhí)行 gacutil /i SessionUtility.dll
  5、注冊(cè)SessionUtility.dll為Com對(duì)象
  找到 regasm.exe 文件,一般情況下在 WINNT\Microsoft.NET\Framework\v1.1.4322 目錄下,在命令提示符窗口中,執(zhí)行 regasm.exe SessionUtility.dll /tlb:SessionUtility.tlb,這樣就會(huì)產(chǎn)生出一個(gè)tlb文件,可當(dāng)做普通的Com組件來調(diào)用。
  6、注冊(cè)SessionManager.dll
  這個(gè)很簡(jiǎn)單了,在命令提示符窗口中,執(zhí)行regsvr32 SessionManager.dll
  7、如果是NTFS格式的系統(tǒng),請(qǐng)找到 SessionMgr.dll,右鍵點(diǎn)擊,屬性,將IUSR_<machine_name>權(quán)限設(shè)置為可讀和可執(zhí)行。

返回列表
返回首頁 主站蜘蛛池模板: 日韩在线视频免费| 亚洲日本中文字幕天天更新| 亚洲白嫩在线观看| 久久精品国产99国产精品亚洲| 一级毛片直接看| 两个人看的www高清免费观看| 自拍偷自拍亚洲精品偷一| 欧美精品寂寞影院请用uc| 日本一本一区二区| 国自产精品手机在线观看视频| 国产区在线观看视频| 亚洲美女高清一区二区三区| 久久久老熟女一区二区三区| 99久无码中文字幕一本久道| 黄色免费网址大全| 激情伊人五月天久久综合| 日本一区视频在线| 国产精品色拉拉免费看| 回复术士的重来人生第一季樱花动漫 | 精品日产卡一卡乱码| 朝鲜女**又多又黑毛片全免播放| 婷婷综合激情五月中文字幕| 国产小视频你懂的| 亚洲日韩在线视频| 一本久久精品一区二区| 香蕉视频一区二区| 欧美成人精品高清在线观看| 婷婷六月久久综合丁香76| 国产夜趣福利免费视频| 亚洲天堂一区在线| javaparser日本高清| 老子影院午夜伦不卡| 日韩欧美亚洲精品| 国产精品嫩草影院在线播放| 伊人色综合久久天天网| 丰满少妇人妻久久久久久| 国产亚洲欧美在在线人成| 欧美激情在线一区二区三区 | 69式啪啪动图| 特级毛片免费播放| 日韩一区二区视频|