摘自: http://lichengguizy.blog.163.com/blog/static/11771858620122342749552/

只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态。

2012-03-03 16:39:31|  分类: .net|字号 订阅

 
 

今天碰到一个错误,错误描述如下:

 

只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态。还请确保在应用程序配置的 <configuration>\<system.web>\<httpModules> 节中包括 System.Web.SessionStateMod 或自定义会话状态模块。

 
网上找了不少资料,方法不少,但是没有解决。
后来在csdn中看到一个帖子,在其中找到解决方案。
 
this.Load+=new EventHandler(Basepage_Load);
 
因为我新建了一个类,我想把这个类作为父类,让其他的类来继承它。
如果说继承了此类,那么想自动调用父类的方法,那么只能在类的构造方法中调用需要自动执行的方法。
 
不过我没看懂为什么要用到委托来实现。(用了委托没报错,直接写入方法名报错。)
 
 
我的代码如下:
    public class myLogin:System.Web.UI.Page
    {
        public myLogin()
        {
            this.Load += new EventHandler(IsLogin);
        }
 
        public void IsLogin(Object sender, EventArgs e)
        {
            if (Session["LoginState"] == null)
            {
                Response.Redirect("~/LoginAdmin/Gonze.aspx");
            }
        }
    }

摘自: http://blog.csdn.net/jjhua/article/details/2908202

发布后运行错误提示:只有在配置文件或   Page   指令中将   enableSessionState   设置为   true   时,才能使用会话状态。还请确保在应用程序配置的   <configuration> / <system.web> / <httpModules>   节中包括   System.Web.SessionStateMod   或自定义会话状态模块。

解决:在web.config里添加<sessionState mode="InProc"></sessionState>(本地机上好用,未多机调试)

具体解释:

<sessionState  mode="Off|InProc|StateServer|SQLServer" 
                              cookieless="true|false" 
                              timeout="number   of   minutes" 
                              stateConnectionString="tcpip=server:port" 
                              sqlConnectionString="sql   connection   string" 
                              stateNetworkTimeout="number   of   seconds"/> 
  
  必选属性  
  属性  选项  说明    
  mode          指定在哪里存储会话状态。    
          Off  指示会话状态未启用。    
          InProc  指示在本地存储会话状态。    
          StateServer  指示在远程计算机上存储会话状态。    
          SQLServer  指示在  SQL  Server  上存储会话状态。    
  
  可选属性  
  属性  选项  说明    
  cookieless          指定不具有  Cookie  的会话是否应用于标识客户端会话。    
          true  指示应使用不具有  Cookie  的会话。      
          false  指示不应使用没有  Cookie  的会话。默认值为  false。    
  timeout          指定在放弃一个会话前该会话可以处于空闲状态的分钟数。默认值为  20。    
  stateConnectionString          指定远程存储会话状态的服务器名称和端口。例如“tcpip=127.0.0.1:42424”。当  mode  为  StateServer  时该属性是必需的。   
  sqlConnectionString          为  SQL  Server  指定连接字符串。例如“data  source=localhost;Integrated  Security=SSPI;Initial  Catalog=northwind”。当  mode  为  SQLServer  时该属性是必需的。   
  stateNetworkTimeout          在使用  StateServer  模式存储会话状态时,指定在放弃会话之前  Web  服务器和状态服务器之间的  TCP/IP  网络连接空闲的时间(以秒为单位)。默认值为  10。   
  
  备注  
  使用  StateServer  模式    
  
  确保  ASP.NET  状态服务正在将用于存储会话状态信息的远程服务器上运行。该服务与  ASP.NET  一起安装,其默认位置为  <驱动器>:/systemroot/Microsoft.NET/Framework/version /aspnet_state.exe。   
  在应用程序的  Web.config  文件中,设置  mode=StateServer  并设置  stateConnectionString  属性。例如,stateConnectionString="tcpip=sarath:42424"。   
  使用  SQLServer  模式    
  
  在运行  SQL  Server  的计算机(它将存储会话状态)上运行  InstallSqlState.sql(默认的安装位置为  <驱动器>:/systemroot/Microsoft.NET/Framework/version)。这将创建一个名为  ASPState  的数据库,该数据库具有新的存储过程并且在  TempDB  数据库中具有  ASPStateTempApplications  表和  ASPStateTempSessions  表。   
  在应用程序的  Web.config  文件中,设置  mode=SQLServer  并设置  sqlConnectionString  属性。例如,sqlConnectionString="data  source=localhost;Integrated  Security=SSPI;Initial  Catalog=northwind"。

在做了 BasePage 时: 只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态。还请确保在应用程序配置的 / / 节中包括的更多相关文章

  1. IIS部署ASP.NET网站后提示只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态...

    今天,在IIS上部署网站后,出现了下面错误: 只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态.还请确保在应用程序配置的 <sy ...

  2. 只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态。还请确保在应用程序配置的 // 节中包括 System.Web.SessionSta

    我直接在父类的构造方法中调用了sessionj结果就报这个错误 搜了好久 让改web.config 可是不起作用 代码如下: public class BasePage:System.Web.UI.P ...

  3. 只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时

    HttpContext context = HttpContext.Current; //而后,再使用: if (context.Session["user"] != null) ...

  4. 关于使用Entity Framework时遇到的问题 未找到具有固定名称“System.Data.SqlClient”的 ADO.NET 提供程序的实体框架提供程序。请确保在应用程序配置文件的“entityFramework”节中注册了该提供程序

    问题描述: 使用Entity Framework获取数据时报以下错误: 未找到具有固定名称“System.Data.SqlClient”的 ADO.NET 提供程序的实体框架提供程序.请确保在应用程序 ...

  5. 使用MSBUILD 构建时出错 error MSB3086: 任务未能使用 SdkToolsPath“”或注册表项“XXX”找到“LC.exe”,请确保已设置 SdkToolsPath。

    如果项目有添加有WB引用,比如引用其它网站的WEB服务等,那么VS在编译时会自动生成个 [项目名称].Serializers.dll的文件,就是把引用服务中的相关对象信息生成硬编码的程序集,以提高效率 ...

  6. angular指令中,require和transclude同时设置为true时的作用

    最近在学习angularJS指令的时候,对指令对象中require属性和transclude属性同时设置为true比较疑惑,于是自己动手测试一下具体差异 index.html: <simple& ...

  7. 当async: true 时,ajax请求是异步的

    方法beforeSend,用于在向服务器发送请求前添加一些处理函数.   type:"GET",//通常会用到两种:GET,POST.默认是:GET      url:" ...

  8. bash启动时加载配置文件过程

    本文目录: 1.1 判断是否交互式.是否登录式 1.2 几种常见的bash启动方式 1.3 加载bash环境配置文件 当用户登录系统时,会加载各种bash配置文件,还会设置或清空一系列变量,有时还会执 ...

  9. 关于quartz定期,起服务时不新增配置文件中的定期问题

    关于quartz定期,起服务时不新增配置文件中的定期问题 问题原因:生产环境中起服务,未加载配置文件信息,且quartz连接超时 查找原因发现 由于别人新建了一个定期文件 并将 quartz工厂类的i ...

随机推荐

  1. Python图像处理库(1)

    转自:http://www.ituring.com.cn/tupubarticle/2024 第 1 章 基本的图像操作和处理 本章讲解操作和处理图像的基础知识,将通过大量示例介绍处理图像所需的 Py ...

  2. GT-----如何做Android应用流量测试?

    1.如何判断一个应用的流量偏高? 如果看流量的绝对值看不出高低,那就找几个同类型的产品对比一下,如果完成同样的事物,被测应用比同类产品高很多,那就偏高了,可能有优化的空间. 2.如何找到有效的优化点? ...

  3. Guid is not updated for cluster with specified cluster id; need to wait for hosts in this cluster to come up

    http://mail-archives.apache.org/mod_mbox/cloudstack-users/201306.mbox/%3c201306181058330006472@gmail ...

  4. Android studio 导入工程 出现错误

    原文:http://blog.csdn.net/qazzxc111/article/details/48787419 对于刚开始使用Android studio 并且以前不了解gradle,IDE之类 ...

  5. Qtp中一个或多个ActiveX控件无法显示问题

    今天在使用qtp进行登陆测试的时候,发现了一个问题,现总结归纳如下: [问题] 在测试过程中,一直提醒:一个或多个ActiveX控件无法显示,原因可能是下列其中之一: 如下图所示: [解决办法] 在Q ...

  6. bzoj 2938 AC自动机 + dfs判环

    #include<bits/stdc++.h> #define LL long long #define ll long long #define fi first #define se ...

  7. Java 中List 集合索引遍历与迭代器遍历

    package yzhou.iterator; import java.util.ArrayList; import java.util.HashSet; import java.util.Itera ...

  8. 浮生半日:探究Python字节码

    好吧!“人生苦短,请用Python”,作为python爱好者以及安全从业者,而且最近也碰到了一些这方面的问题,懂点python字节码还是很有必要的. Python是一门解释性语言,它的具体工作流程如下 ...

  9. Python开发基础-Day18继承派生、组合、接口和抽象类

    类的继承与派生 经典类和新式类 在python3中,所有类默认继承object,但凡是继承了object类的子类,以及该子类的子类,都称为新式类(在python3中所有的类都是新式类) 没有继承obj ...

  10. Python开发基础-Day6-函数参数、嵌套、返回值、对象、命名空间和作用域

    函数的使用原则 函数的使用必须遵循:先定义后使用的原则 函数的定义,与变量的定义是相似的,如果没有事先定义函数而直接引用就相当于在引用一个不存在变量名 定义阶段:只检测语法,不执行代码,当出现语法错误 ...