asp和ASP。NET共享Session状态

redfox105 2005-03-10 01:34:37
比如我在ASP页面登陆后,然后让ASP。NET页面也能识别已经登陆了呢
...全文
873 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
minghui000 2005-03-20
  • 打赏
  • 举报
回复
up
wjscsdn 2005-03-19
  • 打赏
  • 举报
回复
http://dotnet.aspx.cc/ShowDetail.aspx?id=ATV1GLXT-65FF-4M82-CT5U-B1J65D3ZN2OK
songwsdy 2005-03-15
  • 打赏
  • 举报
回复
这个时候,就是应该webservice出场了!
你可以用C#写一个返回bool的验证方法在服务中
然后在ASP中,用VB或javascript来调用这个service!
我试过的………
去找资料吧!
仓木泽 2005-03-15
  • 打赏
  • 举报
回复
use db session
zxddr 2005-03-15
  • 打赏
  • 举报
回复
期待超一流高手的解答
wxt 2005-03-15
  • 打赏
  • 举报
回复
大家忘了ASP.net支持SQLState存储吗?在asp.net将session存入数据库的同时,在asp中建立一个session集合.
使用时,如果以前是session(varname)=varval,现在则用session(varname)(theid)=varval就可以了
qunluo 2005-03-14
  • 打赏
  • 举报
回复
真呢,假呢!?
ldljlq 2005-03-11
  • 打赏
  • 举报
回复
ASP和ASP.NET之间不能共享session

要想兼容得自己写一个登录认证系统。

  • 打赏
  • 举报
回复
ASP和ASP.NET之间不能共享session,我们的站点也遇到过这种情况,解决方案如下:
1.利用WebServices的Session桥机制,直接读取Session ID,再向ID中写值,内核是用C#写的,桥用的是js写的asp。这种方法比较麻烦,有一定的技术含量,符合模块开发。但是这个方法有一个很大的安全漏洞:主桥会暴露Session ID,这会导致登陆系统形同虚设。并且服务器需要安装XML3才可以运行。
2.我们采用的方法,这个方法采用传统的方法,简单。先在ASP系统登陆(也可先在ASP.NET登陆,顺序无所谓),若登陆成功,写asp中的session,然后导向一个aspx页面,并将登陆的用户名、密码加密后传递给这个页。这个aspx页面接收帐号并用逆算法解密,再重复一遍将帐号与数据库校验的登陆过程,若成功则向asp.net写Session。
这样会比较好的完成了SESSION“共享”。
slag 2005-03-10
  • 打赏
  • 举报
回复
不行的!
niunj 2005-03-10
  • 打赏
  • 举报
回复
可以用页面的post方法把session对象传递过去
coolstarhty 2005-03-10
  • 打赏
  • 举报
回复
对于这个问题,很遗憾地告诉你:
ASP和ASP.NET之间不能共享session
hackate 2005-03-10
  • 打赏
  • 举报
回复
代码如下:请参考

<%@ Page Language="vb" AutoEventWireup="false" Codebehind="main.aspx.vb" Inherits="zero.main"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>main</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script language="javascript" charset="gb2312">
function searchvalue()
{
var sql="select * from companyjob";
SetCookie("SendSql",sql);
var url="child.aspx";
window.open(url,'_blank');
}
function SetCookie(name, value)
{
document.cookie = name + "=" + value;
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout" >
<form id="Form1" method="post" runat="server">
<INPUT id="Hidden1" style="Z-INDEX: 101; LEFT: 8px; POSITION: absolute; TOP: 8px" type="hidden"
name="Hidden1" runat="server"><INPUT style="Z-INDEX: 102; LEFT: 96px; POSITION: absolute; TOP: 144px" type="button" onclick="searchvalue();"
value="Open" id="Button1" name="Button1">
<asp:Button id="Button2" style="Z-INDEX: 103; LEFT: 256px; POSITION: absolute; TOP: 152px" runat="server"
Text="Button"></asp:Button>
</form>
</body>
</HTML>
====================================================
child 页



<%@ Page Language="vb" AutoEventWireup="false" Codebehind="child.aspx.vb" Inherits="zero.child"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>child</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script language =javascript >
function getv()
{
alert(document.forms("Hidden1"));

document.all("Hidden1").value=document.forms("Hidden1");
}

</script>
</HEAD>
<body MS_POSITIONING="GridLayout" >
<form id="Form1" method="post" runat="server">
<INPUT style="Z-INDEX: 101; LEFT: 8px; POSITION: absolute; TOP: 8px" type="hidden" id="Hidden1"
name="Hidden1" runat="server"></FONT>
</form>
</body>
</HTML>




.vb文件


If Not IsPostBack Then
'Response.Write(Request.Form("Hidden1"))
Dim cookie As HttpCookie = Request.Cookies("SendSql")
If Not cookie Is Nothing Then
Response.Write(cookie.Value)
End If
End If
jijl2001 2005-03-10
  • 打赏
  • 举报
回复
能具体解一下上面的意思吗?
nga96 2005-03-10
  • 打赏
  • 举报
回复
UP
程式人生2000 2005-03-10
  • 打赏
  • 举报
回复
ASPTOASPX.aspx


<TITLE>ASPTOASPX.aspx</TITLE>
<%@ Page language="c#" %>
<script runat=server>
// We iterate through the Form collection and assign the names and values
// to ASP.NET session variables! We have another Session Variable, "DestPage"
// that tells us where to go after taking care of our business...
private void Page_Load(object sender, System.EventArgs e)
{
for(int i=0;i<Request.Form.Count;i++)
{
Session[Request.Form.GetKey(i)]=Request.Form[i].ToString();
}
//Response.Write(Session["DestPage"].ToString());
Server.Transfer(Session["DestPage"].ToString(),true);
}
</script>
程式人生2000 2005-03-10
  • 打赏
  • 举报
回复
==ASP转换为ASPX==

ASPPage1.asp

<TITLE>ASPPage1.asp</TITLE>
<%
' This is the page where we just set some Classic ASP Session Variables
' ASPPage2.asp is where the work is done.
Session("username")="joeblow"
session("email")="joe@blow.com"
Session("userid")=2
' don't use next two lines if using hyperlink as below in page portion
'Session("DestPage")="Finalpage.aspx"
'Server.Transfer("ASPTOASPX.asp")
%>

<a href="ASPTOASPX.asp?destpage=Finalpage.aspx">go to FinalPage.aspx</a>


asptoaspx.asp

<%
Response.Write("<form name=t id=t action=ASPTOASPX.aspx method=post >")
for each Item in Session.Contents
Response.Write("<input type=hidden name=" & Item)
Response.Write( " value=" & Session(item) & " >")
next
if len(Request.QueryString("Destpage")) >4 then
Response.Write("<input type=hidden name=destpage value=" & Request.querystring("destpage") & ">")
end if
Response.Write("</FORM>")
Response.Write("<scr" + "ipt>t.submit();</scr" + "ipt>")
%>

FinalPage.aspx

<TITLE>FinalPage.aspx</TITLE>
<%@ Page language="c#" %>
<script runat=server>
// This page is just a "proof of concept page"...

private void Page_Load(object sender, System.EventArgs e)
{
Response.Write("Shared Session Variable Names/Values between Classic ASP and ASP.NET:<BR>");
for (int i = 0; i < Session.Contents.Count; i++)
{
Response.Write("Assigned to \"" +Session.Keys[i].ToString()+"\"");
Response.Write(" Value: "+ Session[i].ToString() +"<BR>");
}
}
</script>
程式人生2000 2005-03-10
  • 打赏
  • 举报
回复
登陆时两个程序都登陆一下。没有什么好方法。
kindtoadsd 2005-03-10
  • 打赏
  • 举报
回复
楼主是烟台冰轮的吗?
yipiaoqingshui 2005-03-10
  • 打赏
  • 举报
回复
Session好像挺复杂的.相互转换.可以的是可以.
你用用搜索.以前也有问过的
加载更多回复(1)

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧