ASP.NET MVC 学习笔记之TempData、HttpContext和HttpContextBase杂谈

TempData本质上是Session 但是有一点不同的是,TempData被赋值之后,一旦被Action访问一次之后,马上就会清空。 

  

System.Web.HttpContext System.Web.HttpContextBase 

HttpContext HttpContextBase HttpRequestHttpRequestBaseHttpPostFileHttpPostFileBase的区别。 

他们都是在System.Web命名空间下的两个类 

  1. Controller中的HttpContext是一个HttpContextBase类型的属性(真正的HttpContextWrapper类型,是对System.Web.HttpContext的一个封装),System.Web.HttpContext是一个类型,这两个类之间没有继承关系 

  2. HttpContextBase能进行单元测试,而System.Web.HttpContext不能。 

  3. 推荐在MVC中使用Controller中的HttpContextBase类型的HttpContext属性,而不是使用原始ASP.Net核心类中的HttpContext 

  4. 怎样获取当前的HttpContext呢,在原生ASP.NET中,使用HttpContext.Current进行获取,而在MVC中, 则不推荐用Current,而是随用随传 

public void Add(HttpContextBase ctx, string name){ 

Ctx.Server.MapPath(name); 

} 

 

转载于:https://www.cnblogs.com/c-supreme/p/9517599.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值