再发一次,不知道有没有人帮忙一下啊,

问题描述

vs2005我在app_data文件夹里面建了一个class1.cs这个类,publicintIsUser(){if(Session["UserName"].ToString()==null||Session["UserName"].ToString()!=null&&Session["UserName"].ToString()==""){//可能非有意的引用比较;若要获取值比较,请将左边转为类型string//Response.Redirect("../index.aspx");//Response.Write("<scriptlanguage=javascript>alert('你不是管理员!');location.href='Default.aspx';</script>");return1;}else{return0;}}提示"当前上下文中不存在session"。我的目的是,想在每个页面都调用这个isuser方法。如果session为空的话,转到登录页面,这种方法好吗?

解决方案

解决方案二:
if(this.Session["UserName"]!=null)判断语句写这个
解决方案三:
usingSystem;
解决方案四:
先要判断 Session["UserName"] 是不是为空Session["UserName"]==null
解决方案五:
if(string.IsNullOrEmpty(Session["UserName"].ToString()){//可能非有意的引用比较;若要获取值比较,请将左边转为类型string//Response.Redirect("../index.aspx");//Response.Write("<scriptlanguage=javascript>alert('你不是管理员!');location.href='Default.aspx';</script>");return1;}else{return0;}可以用這個方法判斷string.IsNullOrEmpty()是否為空""或者為null
解决方案六:
publicintIsUser(){if(Session["UserName"].ToString()!=null){//可能非有意的引用比较;若要获取值比较,请将左边转为类型string//Response.Redirect("../index.aspx");//Response.Write("<scriptlanguage=javascript>alert('你不是管理员!');location.href='Default.aspx';</script>");return1;}else{return0;}}
解决方案七:
晕楼上全部不对!!!不在问题点子上你按照下面的写:System.Web.SessionState.HttpSessionStateSession=System.Web.HttpContext.Current.Session然后用楼上几位的方法你的类是写在CS文件里的,Session不是那样获取的想知道为什么自己查MSDN~~~~
解决方案八:
必须穿入当前的page,然后判断page.Session[""]
解决方案九:
上面的方法,都不行啊,我晕了,
解决方案十:
楼主和众多回答者让人晕了N次,6楼的就是正解,哪里还来什么问题?!一般不在页面的代码或者是asmx里,session和application都调用System.Web.HttpContext.Current.Session(application)的。
解决方案十一:
不要再拿ToString来当宝贝了!当Session["UserName"]为null的时候,下面的会报错的:Session["UserName"].ToString()==null你可以这样判断:if(Session["UserName"]!=null){....}或if(Session["UserName"]isstring&&string.IsNullOrEmpty((string)Session["UserName"])){...}
解决方案十二:
对于判断session为空的问题,也即通过判断其如下几种情况:1、是否为null为空条件是:Session["UserName"]==null2、是否为空字符串(可能很多人在退出的代码中将其赋值给空字符串,所以要这么判断。如果在退出时,采用赋为null的方法,则不用判断这一点)因为Session["UserName"]不是string类型,所以要先转换为string来判断。我们知道在转换为string的过程中,如果Session["UserName"]==null,那么会抛出异常,所以应该先判断Session["UserName"]是否为null。剩下的工作既是判断其是否为空字符串的过程。建议使用如下方法,字符串为空字符串判断条件是:string.IsNullOrEmpty((string)Session["UserName"])1和2只要满足其一,即为或的关系,才能是未登陆情况。又因为先后判断的关系,利用||操作符,只有第一个条件满足时,才去判断第二个,所以不会出现异常。最终判断未登录的条件如下示例:if((session["UserName"]==null)||(string.IsNullOrEmpty((string)Session["UserName"]))){未登录的处理}建议在退出设置中,将session["UserName"]设置为null。那么只判断1即可。如下:if(session["UserName"]==null){未登录的处理}
解决方案十三:
靠,都还不知道Session是否存在,就做了Session["*"]ToString(),你够强。if(Session["*"]!=null){//codehere...}
解决方案十四:
搂主要解决的是用Session处理登录问题,因为退出时的处理方式不同,可有如下两种方法:一、方法一在退出登录时,设置session为空字符串。此种情况下,对于判断session为空的问题,需要如下两种情况:1、是否为null为空条件是:Session["UserName"]==null2、是否为空字符串(可能很多人在退出的代码中将其赋值给空字符串,所以要这么判断。如果在退出时,采用赋为null的方法,则不用判断这一点)这个问题分为两步:转换为string类型,判断其为null和""的情况。因为Session["UserName"]不是string类型,所以要先转换为string来判断。我们知道在转换为string的过程,如果利用ToString转换,如果Session["UserName"]==null,那么会抛出异常,所以应该先判断Session["UserName"]是否为null。如果利用(string)Session["UserName"],则不会出现异常。从这里分析,我们发现情况越来越复杂了。至此,可以分出两种情况:1)使用Session["UserName"].ToString()方法这时要先判断Session["UserName"]==null的情况2)使用(string)Session["UserName"]方式。这时不需要先判断是否为空也可以。判断其为null或""剩下的工作既是判断其是否为空字符串的过程。建议使用如下方法,字符串为空字符串判断条件是:string.IsNullOrEmpty((string)Session["UserName"]),这种方法判断null和“”两种情况,如果分写相当于:(((string)Session["UserName"])==null)||(((string)Session["UserName"]).Trim()="")结论部分:对于采用这种方式,表示退出登录。1和2只要满足其一,即为或的关系,就是未登陆情况。如果采用Tostring()转换,因为先后判断的关系,利用||操作符,只有第一个条件满足时,才去判断第二个,所以不会出现异常。最终判断未登录的条件如下示例:if((session["UserName"]==null)||(string.IsNullOrEmpty(Session["UserName"].ToString()))){未登录的处理}如果采用(string)Session["UserName"])方式转换if((session["UserName"]==null)||(string.IsNullOrEmpty((string)Session["UserName"]))){未登录的处理}如前分析因为不会抛出异常,所以我们发现这两个条件似乎有些重复。可以省略第一个条件。但是如果省略第一个条件很多情况下,会增加一些系统的负担。因为每次都要进行类型的转换。二、方法二,在退出设置中,将session["UserName"]设置为null。那么只判断如上所述1即可。如下:if(session["UserName"]==null){未登录的处理}这种方法,少去许多判断,性能好。我认为方法二是较好的做法。但是从对方法一的研究中,我们能学到很多东西。即Session的类型问题,正是没有清楚认识到其类型问题在判断上出现了错误。同时也学习到了ToString()方法的异常问题。更重要的是,判断对象为空的问题,
解决方案十五:
晕乱七八糟的都写了什么啊~~~~~~~~~~~=============================================================LZ说:vs2005我在app_data文件夹里面建了一个class1.cs这个类=============================================================应该是在app_code中吧?如果是,那么:publicintIsUser(){System.Web.SessionState.HttpSessionStateSession=System.Web.HttpContext.Current.Session;if(Session["UserName"].ToString()==null¦¦Session["UserName"].ToString()!=null&&Session["UserName"].ToString()==""){//可能非有意的引用比较;若要获取值比较,请将左边转为类型string//Response.Redirect("../index.aspx");//Response.Write("<scriptlanguage=javascript>alert('你不是管理员!');location.href='Default.aspx';</script>");return1;}else{return0;}}如果是在app_data中,那么请把它放到app_code中~~~~~
解决方案:
Session["UserName"].ToString()==null这个也不对,要写成Session["UserName"]==null要知道null是不能ToString的~~~
解决方案:
if((string)Session["UserName"]==""||(string)Session["UserName"]==null){未登录的处理}这样就可以啦
解决方案:
你在哪里定义的session?去看一下对不对,名称有没有写错

时间: 2024-07-29 08:39:59

再发一次,不知道有没有人帮忙一下啊,的相关文章

再发一帖。我就不信没有人可以解决这个问题。

问题描述 在此再发一帖.我就不信没有人可以解决这个问题.http://topic.csdn.net/u/20071114/22/ed26f2ff-42d7-4dc8-8875-b85be7c62346.html这是我的上一个帖子.还是没有解决.我知道这个问题肯定有很多朋友遇到的.希望有经验的朋友给讲一下.谢谢..很急..问题如下==========================程序中用了<uc1:top2id="Top21"runat="server">

java-新人求助,为什么我的UDP和串口调试助手只能发送一次数据,再发数据必须重新监听,为什么

问题描述 新人求助,为什么我的UDP和串口调试助手只能发送一次数据,再发数据必须重新监听,为什么

许巍再发精选辑被斥技穷:我只做自己的音乐

许巍 晨报记者徐宁 自2002年签约金牌大风后,许巍只发过四张专辑,但是精选辑和演唱会专辑却从未间断.明年1月1日,许巍将再发精选辑<一时>,这张唱片最大的噱头是所有的歌曲都经过重新混音,且歌速调慢15%.有质疑的声音称,这种玩概念的方式意味着许巍技穷,近几年频繁商演无心创作,只好拿精选来充数.许巍笑对这些质疑,表示不会介意别人怎么说,因为Remix(混音)是自己多年的兴趣. <爱如少年>的余韵犹在耳际,时隔两年,每个人都在殷切等待许巍的全新作品,许巍却交出了名为<一时>

双汇再发肋排烫出蛆虫事件说明:正抽样检测

6月2日,因被消费者微博曝出肋排烫出 蛆虫事件的双汇集团,在其官方网站上再发公告,对事件细节做了核实说明.公告称,目前,当地工商部门已对784号双汇连锁店内正在销售的部分冷鲜肉产品和已封存的被曝问题肋排留样产品进行了抽样,目前正在等待检测结果.据双汇发布的公告显示,被曝出现问题肋排的784号双汇连锁店,5月27日当天共销售生鲜肉产品 64.19 公斤,其中:大肋排和脊骨两种产品共 13.04 公斤.该店当日顾客流量 606 人,其中有 133 名顾客购买双汇冷鲜肉产品,除刘先生外至今未接到其他顾

应采儿微博警告对方“别再发奇怪照片给陈先生”

警告对方"别再发奇怪照片给陈先生" 本报讯 前天13时50分陈太应采儿发微博向情敌霸气示威称:"别再发奇怪照片给陈先生."似乎暗示有"情敌"暗中勾引丈夫陈小春.有http://www.aliyun.com/zixun/aggregation/3640.html">网友评论其"霸气侧漏",圈中好友赵子琪.杨幂也都纷纷转发应采儿微博为她叫好. 应采儿在微博上说道:"那个女的敢再发些奇怪的短信和照片给陈先生

过节想发个快件 三天没人来取

本报讯(记者 李松)"连续打了三天电话,快递公司就是不派人来取."看着手中的快件,市民陈小姐很无奈.记者上午走访发现,目前不但许多春节前的快件仍未派送,想发个快件也频吃"闭门羹".部分快递公司上午在接受记者采访时表示,受部分快递网点仍未恢复正常运营.快递人员缺失等因素影响,节后快递行业仍处于"春运高峰",预计这种情况要到下月初才能缓解. 发现 想发个快件 三天没人来取 "是小李吗?哎呀,你终于回来了!今天能来取个件吗?"今天上

运营商互联网再发力,就是认真!

电信运营商对互联网,从最初没顾上看不上,到如今变得非常急迫.几家运营商都陆续明确提出互联网化转型,通过互联网业务创新再造自己的口号.从2014年中移动.中电信的大动作看,中移动的新媒体公司(消息称命名"咪咕" 三年注资104亿元).互联网公司均在积极筹备中,中电信今年1月份成立了综合平台开发运营中心,7月份开放合作大会提出主要以混合所有制促发展.因此,形势所迫,2014年可说是电信运营商再次发力互联网的元年.现在的问题是,对于这种发力,运营商是认真的吗? 一.努力对无互联网基因说不 电

一个实现自定义event的文章。。。我还没有完全摸透。。不知道有没人有兴趣。。新手就不用看了,先学会

The latest offering from Microsoft to support software development is the .NET Framework. Inside this vast Framework is the ASP.NET. The ASP.NET facilitates the application development community in generating high performance Web based applications t

慧点科技再发力,移动平台“SmartGO”助力政企移动信息化

中国企业级移动应用市场将迎来高速增长,据有关机构的报告预测:到2016年,中国企业级移动应用市场规模将达到660多亿,未来四年复合增长率达到60%多,企业级应用市场将成为移动互联网的下一个主战场. 企业级移动应用正从以移动办公为代表的通用解决方案向行业移动应用转型,越来越多的面向具体业务场景的移动应用被普及.用户的建设模式也将从单一的解决方案向企业级移动应用平台转型. 慧点科技作为中国领先的管理软件与服务提供商,拥有超过十年的移动信息化建设经验,为150余个大型政企客户提供了移动化产品与服务.近