asp与aspx共享session

因为最近要把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"

%>