当前位置: 首页 > 编程语言 > C#

将会话变量值与字符串进行比较分享

时间:2023-04-11 12:14:48 C#

C#学习教程:比较会话变量值和字符串我正在使用的代码:if(Session["loggedInUsername"]==null){btnLogin.Text="SignIn";lblWelcome.Text="欢迎光临!";hypManageRestaurants.Enabled=false;hypManageReviews.Enabled=false;hypPostReviews.Enabled=false;}else{if(Session["loggedInUserType"]=="Administrator"){hypManageRestaurants.Enabled=true;hypManageReviews.Enabled=true;hypPostReviews.Enabled=true;}else{hypManageRestaurants.Enabled=false;hypManageReviews.Enabled=false;hypPostReviews.Enabled=true;}lblWelcome.Text="欢迎"+Session["loggedInUsername"];btnLogin.Text="注销";因此,首先我检查用户是否已登录。如果用户成功登录,会话变量“loggedInUsername”的值为用户名。如果“loggedInUsername”会话变量不为空,则它检查“loggedInUserType”会话变量以获取登录用户的类型。这是一件奇怪的事情,“loggedInUserType”的值恰好是没有“”的“Administrator”,在if函数中我将会话变量与字符串“Administrator”进行比较,跳过并转到其他。当用户登录时,所有会话变量都会获得值。下面是我用来登录的数据,这条记录是唯一一条类型为“管理员”的记录。链接到图像是否有任何其他方法可以将会话变量与字符串进行比较将对象类型值转换为字符串((字符串)Session[“loggedInUserType”])==“Administrator”尝试if(Convert.ToString(Session[“loggedInUserType”])=="管理员)...试试这个:从末尾修剪所有空格?if(Session["loggedInUserType"].ToString()=="Administrator")会话集合返回对象类型的值,因此当您将它与字符串进行比较时,您正在比较对象引用的值,而不是字符串值。将对象引用转换为字符串:if(((string)Session["loggedInUserType"])=="Administrator")你可以这样做:stringsession=(string)Session["loggedInUserType"]if(session=="Administrator")或者你的Session可以在一个带有getter的特定类中。if(Convert.ToString(Session["loggedInUserType"])=="Administrator)这种方式不需要检查null值,因为Convert.ToString句柄Null值返回""空字符串上面是C#学习教程:session变量值和字符如果对您有用,需要了解更多C#学习教程,希望您多加关注,本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除,如有请注明出处:

最新推荐
猜你喜欢