Web端 Cookie Session ViewData ViewBag

              早就想总结下前台关于传值和缓存的一些使用,今天终于写了这篇文章、文章不深,非常适合初学者。

Cookie  

            介绍: Cookie是存在用户浏览器中的一个文件、比如存入用户名和密码、下次实现自动登录、或者一些用户的个人信息、实现服务器端可以对客户端的不同客户进行不同服务,通常Cookie存在客户端是加密过的、当Cookie到一定数量、或者到设置好的删除日期、浏览器就会自动清除Cookie。


用处:

            1、 记录用户名和密码 

                        以及该用户需要保存的一些信息,如购物购站,使用cookie,可以让用户自动登录到站点等。 

            2、 定制站点 

                        可以使用cookie来记录用户的偏好。 

            3、 定向广告 

                        可以使用cookie来记录用记经常访问的主题,并向他们显示与这些主题相关的广告。 


特点:

            1 、放在客户端

            2 、不安全、容易被人修改、造成Cookie欺骗

            3 、大小不能超过4K,每个网站只允许存20

            4 、减少服务器的使用


CSDN的本地Cookie文件如图



Cookie与服务端交互图


使用

<span style="font-size:18px;">	//写入
	HttpCookie ITOOCookie = new HttpCookie(key, value);
	//设置时间
	ITOOCookie.Expires.AddHours(20);
	//读取获取
	HttpCookie userInfoCoookie = Request.Cookies.Get("selfUserInfo");
	var userInfo = userInfoCoookie.Value; 
</span>





Session 


Session在平时用的非常爽、因为我用MVC各个控制器都可以读到、有点像静态变量的意思、哇咔咔。

特点:

1 数据放在服务器上,安全

2 如果访问次数多、占用服务器资源

交互图:


使用:

<span style="font-size:18px;">	//写入
	 Session.Add("id", studentViewModel.StudentNo);
	//读取
	Session["studentIDBox"] 
</span>

Session也是Key和值的、写入用key和值、读取用key






ViewData

认识:ViewData是字典类型,


使用

	//后台赋值
	ViewData["studentSex"] = studentViewModel.Sex;
	//页面读取
<span style="white-space:pre">	</span>@ViewData["dateNow"] 


http://blog.csdn.net/hejingyuan6/article/details/39377553


ViewBag


使用

	//后台赋值
	ViewBag.DateNow= DateTime.Now;  
	//前台使用
<span style="white-space:pre">	</span>@ViewBag.DateNow 

http://blog.csdn.net/hejingyuan6/article/details/39377553?source=1




ViewData与ViewBag异同点

              1 MVC3视图数据可以通过ViewBag属性访问,MVC2中是使用ViewDataMVC3保留了ViewData

              ViewBag是动态类型(dynamic),ViewData是一个字典型的(Dictionary)。

              viewData比viewBag要快,且在viewPage中查询数据是需要转换数据类型,而viewBag不需要数据转换


总结:

其实各种传值都非常简单,无非就是键值字典,或者动态类型、点出属性赋值,只要知道他们的相应域,生命周期,各自的用处,就可以知道在哪种情况用哪种。




————————————————chenchen————————————————



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值