现在有个网站,原来是用asp写的,现在想新增功能,新增部分用asp.net+C#,现在想问下,如何能共享原来asp页面中的例如session,application对象之类的变量值?谢谢了!

解决方案 »

  1.   

    在asp和asp.net中共享session会话(其它类似)。登录页面使用C#重新创建,在成功登录后执行语句:Response.Write("<script language='javascript'>window.open('ASPXTOASP.aspx','new');</script>");打开aspxtoasp.aspx页面,action设为aspxtoasp.asp,即可将session值post到asp页面,因为是单向传递,不用在其他页面重复执行动作,经测试,传递成功!Aspxtoasp.aspx代码如下:<script language="C#" runat="server"> 
    Response.Write( "<form name=t id=t action=ASPXTOASP.asp method=post>" );
    foreach(object it in Session.Contents)
    {
        Response.Write("<input type=hidden name=" + it.ToString());
        Response.Write( " value=" + Session[it.ToString()].ToString() + " >");
    }
    Response.Write("</FORM>");
    Response.Write("<script>t.submit();</script>");
    </script>Aspxtoasp.asp代码如下:<%
    for i=1 to Request.Form.Count 
        Session(Request.Form.Key(i))=Request.Form(i)
    next
    Response.End
    %> 
    <script language="JavaScript">
        window.close();
    </script>
      

  2.   

    我是用按钮单击后从一个asp页面转到asp.net页面那样的话这样做还行吗?
      

  3.   

    如何能共享原来asp页面中的例如session,application对象之类的变量值其实有个方法,是用类似webservice技术就可以的str="<?xml....>"
    str=str & "<root>"
    str=str & "<member_num>" & application("online") & "</member_num>"
    ....用asp.net用调用xml的功能就可以把这个数据读取了,不过session就比较麻烦,一般可以用cookie替代