Application 、Cookie和 Session 两种会话有什么不同

答:Application是用来存取整个网站全局的信息,而Session是用来存取与具体某个访问者关联的信息, Session是保存在服务器端的,比较安全,可以放大数据。Cookie是保存在客户端的,机密信息不能保存在Cookie中,只能放小数据;

Session不要放过多的信息,由于IIS的问题,有可能会丢Session的信息(IIS在负载高的时候,会丢失Session的信息)

session是用于页面间传值用的

 

关于SessionID     

Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器的时候,会由服务器生成一个唯一的sessionId,用该sessionId为标识符来存取服务端的session存储空间,而sessionId’这一数据则是保存到客户端,用cookie保存的,用户提交页面的时候,会将这一sessionId提交到服务器端,来存取session数据,服务器也可以通过URL重写的方式来传递sessionId的值,不是完全依赖于cookie。

Session有什么重大BUG,微软提出了什么方法加以解决?(常考)

iis中由于有进程回收机制,系统繁忙的话Session会丢失,IIS重启也会造成Session丢失。这样用户就要重新登录或者重新添加购物车、验证码等放到Session中的信息。可以用State  server或SQL Server数据库的方式存储Session不过这种方式比较慢,而且无法捕获Session的END事件。但是(一定要写上,这样才够拽)我认为这不是Bug,只能说是In-Proc方式存储Session的缺陷,缺陷是和Bug不一样的,In-Proc方式存储Session会由服务器来决定什么时候释放Session,这是By Design,In-Proc方式不满足要求的话完全可以用StateServer和数据库的方式。

相信几乎所有学过asp.net的朋友都遇到过这个问题:未将对象引用设置到对象的实例。这个问题在我刚开始学习这方面的知识的时候真有点让崩溃的感觉,当时都快打击死我了,不过经过了以后,反而有一种明朗的小激动,呵呵,问题是进步的阶梯,此乃真理。下面,就来看一下到底都有哪些原因会造成这个问题的出现(这里有我自己遇到的问题,也有在网上查阅的资料)

一、数据库方面

1、ViewState 对象为Null。

2、DateSet 空。

3、sql语句或Datebase的原因导致DataReader空。

4、声明字符串变量时未赋空值就应用变量。

5、未用new初始化对象。

6、Session对象为空。

7、对控件赋文本值时,值不存在。

8、使用Request.QueryString()时,所获取的对象不存在,或在值为空时未赋初始值。

9、使用FindControl时,控件不存在却没有做预处理。

10、重复定义造成未将对象引用设置到对象的实例错误.

二、应用程序方面

(1)所设置的变量为空值或没有取到值,一般出现在传递参数的时候出现这个问题,也会在使用DataGrid或gridview或datalist等数据控件时出现.

  (2)控件名称与codebehind里面的没有对应

  (3)未用new初始化对象

  (4)在程序中所引用的控件不存在

  解决方法:

  (1)使用try..catch...finally捕捉错误,或直接用response.write()输出所取的变量值

  (2)查看代码中是否存在未初始化的变量

三、数据库连接

SqlConnection.Open   未将对象引用设置到对象的实例

在使用VS2003开发 ASP.NET程序时候 有时候操作 SqlConnection对象的Open()方法时候会出现

未将对象引用设置到对象的实例。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息:System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:

。。。。

conn.Open();

......

跟踪调试也肯定可以确定 对conn进行new 操作 但是程序经常在这个地方报错,但是有时候重启服务器或者重启IIS有能正常使用了。 怎么调试也找不到问题  那么这个时候可能是你本机上安装的.NET FRAMEEWORK 框架有问题,可能没有没有安装SP1.1补丁

需要打NETFRAMEEWORK1.1 SP1的补丁,到微软官方网站下载安装后就好了。

四、一般出现NullReferenceException异常的情况:

1、对象所在的命名空间没有引用

2、对象没有实例化

3、出现异常,实例化失败对象为 null

五、IIS 扛不住的时候,也会出现上面的错误。

当应用程序的用户访问量超过它能承受的范围之后,就会出错。

改善你的程序,使用缓存,尽量减少与数据库交互的次数。

六、查看是否重置了DataSet引用

请大家好好查查自己的代码,是不是在其他地方重新引用了,在DataSet被设置成全局对象也会出现这种错误提示。

七、最后

甚至,仅仅因为网站里面DAL的dll文件失效,业务层实例化不了IDAL里面的对象也会出错。

当你发现所有的方法不行时,打上.netframework的补丁

总结

暂时就这么多了吧,虽然错误的表现形式大致相同,但是其原因却是五花八门,学习就要像中医一样,治标更要治本,学习要知其然还要知其所以然。

要么放在pageload里面

在html中嵌入C#的代码,直接使用<% c#代码 %>就行了

要么在页面跳转前把值赋给变量就行了

有form的,需要把调整form的action地址,下一步才去找onclick等事件的地址

没有form包含的,直接去按钮中找onclick事件的地址

会话变量通过存储在

HttpContext.Session属性公开的

SessionStateItemCollection对象中。

通过HTML隐藏控件也可以实现页面间值的传递,但是比较麻烦,还是session比较方便

不同浏览器会产生新的会话,因为session是根据发给浏览器的cookie来产生的,不同浏览器的cookie不一样

下面的这种写法是没有冒号的,注意!!

  1. <%=Application["online"]%>HttpCookie cc =newHttpCookie("name","spike");
    HttpCookie cc =newHttpCookie("passwrod","spike");
    Response.SetCookie(cc.name);
    Response.SetCookie(cc.password);
    

来自为知笔记(Wiz)

附件列表

  • QQ截图20151213150752.png

转载于:https://www.cnblogs.com/weloveshare/p/5300059.html

ASP.NET-Session cooike相关推荐

  1. ASP.NET Session 详解

    本文仅代表作者个人观点,正确与否请读者自行研究! 阅读本文章之前的准备 阅读本文章前,需要读者对以下知识有所了解.否则,阅读过程中会在相应的内容上遇到不同程度的问题. 懂得ASP/ASP.NET编程  ...

  2. 关于asp.net Session丢失问题的总结

    asp中Session的工作原理: asp的Session是具有进程依赖性的.ASP Session状态存于IIS的进程中,也就是inetinfo.exe这个程序.所以当inetinfo.exe进程崩 ...

  3. 转贴一篇很不错的有关ASP.NET Session的分析文章

    ASP.NET Session详解 阅读本文章之前的准备 阅读本文章前,需要读者对以下知识有所了解.否则,阅读过程中会在相应的内容上遇到不同程度的问题. 懂得ASP/ASP.NET编程 了解ASP/A ...

  4. [ASP.NET] Session的了解

    ASP.NET Session的使用当中我们会遇到很多的问题,那么这里我们来谈下经常出现的一些常用ASP.NET Session的理解: ASP.NET Session的七点认识之一 对于值类型的变量 ...

  5. [ASP.NET] Session 详解

    阅读本文章之前的准备    阅读本文章前,需要读者对以下知识有所了解.否则,阅读过程中会在相应的内容上遇到不同程度的问题.       懂得ASP/ASP.NET编程    了解ASP/ASP.NET ...

  6. Asp.Net Session学习总结

    ASP.NET 中的 Session 怎么正确使用 https://www.cnblogs.com/ideacore/p/6423281.html Session对象用于存储从一个用户开始访问某个特定 ...

  7. asp.net session 介绍一三种Session存储方式

    asp.net session 介绍一三种Session存储方式 www.firnow.com 时间:2009-03-04 作者:匿名 编辑:sky 点击: 1478 [评论] 对于asp.net的程 ...

  8. asp.net Session丢失问题

    首先了解一下asp.net Session的实现 asp.net的Session是基于HttpModule技术做的,HttpModule可以在请求被处理之前,对请求进行状态控制,由于Session本身 ...

  9. ASP.NET Session的七点认识(转)

    ASP.NET Session的使用当中我们会遇到很多的问题,那么这里我们来谈下经常出现的一些常用ASP.NET Session的理解: ASP.NET Session的七点认识之一 对于值类型的变量 ...

  10. Asp.Net Session 丢失的奇怪问题,求救!

    Asp.Net Session 丢失的奇怪问题,求救 我遇到一个很奇怪的 asp.net 问题,我有三个页面: login.aspx :实现输入帐号密码,将帐号(yh :用户)及权限 ( js_id ...

最新文章

  1. 学python有什么好处 学完可以做什么
  2. 【数理知识】《数值分析》李庆扬老师-第8章-矩阵特征值计算
  3. python思维导图完整版下载高清_快速学习 Python 的全套 14 张思维导图(附高清版下载)...
  4. Strategy Pattern(策略模式)
  5. python多线程调用携程,进程、线程和携程的通俗解释【刘新宇Python】
  6. 推荐系统与协作过滤面临的主要问题
  7. Qt入门之常用qt控件认知之QLabel
  8. DataTable.Compute功能
  9. 【ABP框架系列学习】N层架构(3)
  10. ngnix集群产生的问题
  11. DL应用:query生成和query推荐
  12. 岑溪高考成绩查询2021,2019岑溪高考成绩喜报(归义中学、筋竹中学、南
  13. 关于面试!(简历篇)
  14. macOS 升级12.0.1后,virtualBox 又不能用了
  15. vim中编辑了代码 但是提示can not write的解决办法和代码对齐办法
  16. Python 实现导入三份EXCEL表自动生成每周的考核周报WORD文档
  17. 高通625系列-MSM8953 (Cortex-A53架构)
  18. 83-MongoDB介绍
  19. WebRTC 音视频同步分析
  20. 华为笔记本能装手机App了,华为移动应用引擎(公测版)

热门文章

  1. 手写简版spring --9--对象作用域和FactoryBean
  2. FFmpeg再学习 -- SDL 环境搭建和视频显示
  3. hdu2152(普通母函数)
  4. 处理android11以上无法删除相册图片的问题
  5. 《微服务:从设计到部署》中文版
  6. 《Android插件化技术——原理篇》
  7. Rxjava+Retrofit+Mvp的使用实例(基于retrofit2.1.0)
  8. JZOJ 3947 . 【省常中JSOI模拟】收历史作业
  9. JZOJ 5437. 【NOIP2017提高A组集训10.31】Sequence
  10. php根据单词截取英文语句,php按单词截取字符串的方法_PHP教程