mvc中seeeion和cook的用法
public
ActionResult A()
{
Session[
"test"
]=
"123"
;
return
View();
}
public
ActionResult B()
{
string
v=Session[
"test"
].ToString();
return
View();
}
这样创建session是获取不到的,原因是因为创建的session是Controller下的(这里自己可以深入研究一下),而不是System.Web.HttpContext.Current的session。
想要所有的地方都可以获取session的值,应该是如下写法
public
ActionResult A()
{
System.Web.HttpContext.Current.Session[
"test"
]=
"123"
;
return
View();
}
public
ActionResult B()
{
string
v=System.Web.HttpContext.Current.Session[
"test"
].ToString();
return
View();
}
HttpCookie Cookie = null;
Cookie = new HttpCookie("User");
if (Cookie != null)
{
Cookie.Expires = DateTime.Now.AddDays(-1);
Response.Cookies.Set(Cookie);
}
HttpCookie cookie = new HttpCookie("MyCook");
DateTime dt = DateTime.Now;
cookie.Expires = dt.AddMinutes(5); //五分钟过期
cookie.Values.Add("userid", "dsc");
cookie.Values.Add("username", HttpUtility.UrlEncode("段世昌")); //注意汉子存储的时候,如果直接存的是汉字,读取的时候值是乱码,因此要先把汉子编码,读取的时候再解码就ok了,字母就不用编码了
Response.AppendCookie(cookie);
-读
if (Request.Cookies["MyCook"] != null)
{
// HttpCookie cookie=Request.Cookies["MyCook"];
//string s=cookie["userid"].ToString();//整行
string c= Request.Cookies["MyCook"]["userid"].ToString();//整行
string c3= HttpUtility.UrlDecode(Request.Cookies["MyCook"]["username"]); //汉字要解码的
}
上一篇: 3dmax怎么制作一个简单漂亮的亭子?
推荐阅读
-
SQL中distinct 和 row_number() over() 的区别及用法
-
对比Python中__getattr__和 __getattribute__获取属性的用法
-
SQL中DATEADD和DATEDIFF的用法示例介绍
-
python中单下划线(_)和双下划线(__)的特殊用法
-
Python中 Global和Nonlocal的用法详解
-
PHP中ini_set和ini_get函数的用法小结
-
闭包在python中的应用之translate和maketrans用法详解
-
Mybatis的mapper文件中$和#的用法及区别详解
-
Python中内置数据类型list,tuple,dict,set的区别和用法
-
Python中的is和id用法分析