因为最近要把asp和aspx两个网站整合到一起,session自然就成了一个难题了,自己在这方面还没有接触过,所以没办法又到处找资料。微软的网站上提供的是用数据库实现的,总觉得太麻烦,速度又会下降,于是放弃.也有说直接使用的,但我试了下没成功,大部分人认为这样是不可能的。另外还有一种方法,就是通过几个页面转换,我最后选用也是这个方法,通过搜索到的资料,整理后编写了几个页面来转换。主要是通过隐藏的input来实现的。具体方法如下:
程序代码
程序代码
程序代码
程序代码
asp转asp.net
logincheck.asp

<% Username=Request.Form("Username") Password=Request.Form("Password") Set Rs = Server.CreateObject("ADODB.Recordset") sql="select * from teacher where Uname='"&Username&"' and Pwd='"&Password&"'" rs.open sql,cn,1,1 if rs.bof or rs.eof then Response.write("<script>alert('用户名或密码错误!请返回重新输入');window.location.replace('default.asp');</script>") Response.End() else session("Username")=trim(Rs("Uname")) response.write("<form name=frm id=frm action=""asptoaspx.aspx"" method=post >") Response.Write "<input type=hidden name=uname value="&session("Username")&">" Response.Write "<input type=hidden name=flag value=1">" //此处用来判断登陆还是退出 response.write("</form>") response.write("<scr" + "ipt>frm.submit();</scr" + "ipt>") %>
asptoaspx.aspx

<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="gb2312" %> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { string flag = Request.Form.Get("flag"); if (flag == "1") { Session["teacher"] = Request.Form.Get("uname"); } else { Session["teacher"] = ""; } Response.Redirect("http://127.0.0.1/show"); } </script>
asp.net 转 asp 页面:
logincheck.aspx

<%@ Page language="c#" %> <script language=C# runat=server> private void Page_Load(object sender, System.EventArgs e) { Session["teacher"] = uname.Text.Trim().ToString(); Response.Write("<form name=frm id=frm action=aspxtoasp.asp method=post>"); Response.Write("<input type=hidden name=username value='"+Session["teacher"]+"'>"); Response.Write("<input type=hidden name=flag value=1>"); Response.Write("</form>"); Response.Write("<scr"+"ipt language='javascript'>frm.submit();</scr"+"ipt>"); } </script>
aspxtoasp.asp

<% flag=request("flag") if flag="1" then session("teacher")="" else session("teacher")=request("username") end if Response.Redirect"xxx.aspx" %>