JBTALKS.CC

标题: asp.net session + global.asax 问题 [打印本页]

作者: 我是大猪头    时间: 2009-11-7 04:47 PM
标题: asp.net session + global.asax 问题
一直都很不明白global.asax里面的事件是怎样用的
例如说那个session_start和session_end是什么时候才会开启
是不是当我的某个user一login然后用session记录他的userid+password+role过后
就会引发session_start事件。。
当我logout的时候用session_abandon就会引发session_end事件
如果我想在logout过后直接跳转页面去login的页面是不是要在session_end做这样的动作
会不会有效Response.Redirect("~/LoginFolder/Login.aspx";会不会有效?
其实我也不是很清楚session_abandon是怎么一回事。。
跟session_clear有什么分别
作者: Super-Tomato    时间: 2009-11-7 05:59 PM
原帖由 我是大猪头 于 2009-11-7 04:47 PM 发表
一直都很不明白global.asax里面的事件是怎样用的
例如说那个session_start和session_end是什么时候才会开启
是不是当我的某个user一login然后用session记录他的userid+password+role过后
就会引发session_start事件。。
当我logout的时候用session_abandon就会引发session_end事件
如果我想在logout过后直接跳转页面去login的页面是不是要在session_end做这样的动作
会不会有效Response.Redirect("~/LoginFolder/Login.aspx";会不会有效?
其实我也不是很清楚session_abandon是怎么一回事。。
跟session_clear有什么分别


session 的紀錄是在 session_start 事件創建成功之後才能紀錄
你使用 session 的話在使用者在開啟頁面的時候就會觸發 session_start 事件, 而在關閉瀏覽器的時候 Application 就會 abandon 掉 session

abandon 和 clear 的差別從字面就可以了解其意思(清除與摒棄)
作者: 我是大猪头    时间: 2009-11-7 08:02 PM
那么log out就是应该使用session_clear咯??em0010
作者: Super-Tomato    时间: 2009-11-7 08:08 PM
原帖由 我是大猪头 于 2009-11-7 08:02 PM 发表
那么log out就是应该使用session_clear咯??em0010


這就看你怎麼用了

clear 只是把 session 中的項目清除而已, 但沒釋放在 Application 中所創建的 session
abandon 的情況下 session_end 就會被觸發, 那麼你要是再想使用就會創建新的 session
作者: 我是大猪头    时间: 2009-11-7 08:16 PM
原帖由 Super-Tomato 于 2009-11-7 08:08 PM 发表


這就看你怎麼用了

clear 只是把 session 中的項目清除而已, 但沒釋放在 Application 中所創建的 session
abandon 的情況下 session_end 就會被觸發, 那麼你要是再想使用就會創建新的 session


不是很了解。。。
有实例吗?
作者: Super-Tomato    时间: 2009-11-7 08:26 PM
原帖由 我是大猪头 于 2009-11-7 08:16 PM 发表


不是很了解。。。
有实例吗?



我不使用 .NET 所以沒辦法給你例子, 所以你只好

1. 使用 google 搜索例子, 這種例子可以說是一籮筐
2. 等待 goodday 給你實例吧
作者: goodday    时间: 2009-11-7 09:16 PM
当你进入 website     session 就 trigger 了
没关有没有login 的

session["username"]   <--- 这类的是 extra 自己加入 的

一进 browser 会有个cookie for session 的 你能在 SessionID.



        Session["abc"] = "abc";
        Session.Add("def", "def");


当 session create 时 就会 trigger
globe.asax 的

session_start

你学歪了 呵呵 搞错它们原先设计的概念

Response.Redirect("~/LoginFolder/Login.aspx");

不会有效的
那边是放 整个 website 的 session 管理的

globe.asax 是website 用的
你的user 的是 page.aspx 用的

globe.asax 是用来 做 在线总人数, ip 记录, error tracking 的

http://www.dotblogs.com.tw/jimmyyu/archive/2009/08/07/9930.aspx
作者: goodday    时间: 2009-11-7 09:28 PM
补两张





同一个 cookie value
em0011
作者: 我是大猪头    时间: 2009-11-7 11:10 PM
还不是很了解。。
不过也一知半解了
如果补个global.asax + session的实例上来应该就有个80%了解了。。
那么web.config和global.asax有什么关系
作者: 我是大猪头    时间: 2009-11-7 11:13 PM
网上找的都解释到太模糊了,对于我这种新手。。
真的是看不懂
作者: goodday    时间: 2009-11-7 11:26 PM
http://www.cnblogs.com/ringwang/archive/2008/01/24/1052058.html

web.config
是设计给 web application 的外部设定
如 ajax , cache control , 是告诉 iis 你的站需要什么的 设定
配合iis 7 是 无敌的

global.asax
是 state control,  session, application
是page 的life time
从 生 老 病 死
从 create,idle,error,close
MVC 的是 URL routing , URL Rewrite 达成 RESTful 的效果



又多个给我折磨的 要死不死

作者: 我是大猪头    时间: 2009-11-7 11:32 PM
原帖由 goodday 于 2009-11-7 11:26 PM 发表
http://www.cnblogs.com/ringwang/archive/2008/01/24/1052058.html

web.config
是设计给 web application 的外部设定
如 ajax , cache control , 是告诉 iis 你的站需要什么的 设定
配合iis 7 是 无敌的 ...



...你说的好像越来越深奥
等我过了学校的project在慢慢去了解吧
作者: 我是大猪头    时间: 2009-11-7 11:36 PM
原帖由 goodday 于 2009-11-7 11:26 PM 发表
http://www.cnblogs.com/ringwang/archive/2008/01/24/1052058.html

web.config
是设计给 web application 的外部设定
如 ajax , cache control , 是告诉 iis 你的站需要什么的 设定
配合iis 7 是 无敌的 ...



话说回来啊你有没有一个global.asax + session的实例啊~
有用到global.asax里面的 session_start + session_end的em0013
最好是还有application_start和application_end都有em0012
作者: goodday    时间: 2009-11-8 12:23 AM
你自己去找

asp.net 在线人数

多的是




欢迎光临 JBTALKS.CC (https://www.jbtalks.cc/) Powered by Discuz! X2.5