Controller的激活(1)

Public interface IController
{
       void Execute(RequestContext requestContext)      
}

  

Public abstract Class ControllerBase:IController
{
        protected virtual void Execute(RequestContext requestContext);
        protected abstract void ExecuteCore();
        public Class ControllerContext  ControllerContext {get;set;}
        public TempDataDictionary TempData{get;set;}
        public object ViewBag{[return:Dynamic] get;}
        public ViewDataDictionary ViewData{get;set;}
}    

ControllerBase 拥有的几个重要属性,TempData,ViewData,ViewBag,他们泳衣存储从Controller向View传递的数据或者变量,其中TempData 和ViewData 具有基于字典的数据结构,Key和Value分别表示变量的名称和值,二者的不同之处在于前者仅仅用于存储临时数据,并且设置的变量被第一次读取之后就会被移除,换句话说通过TempData设置的变量只能被读取一次,ViewBag和ViewData共享着相同的数据,他们之间的不同之处是前者是一个动态对象,我们可以指定任何属性(动态属性名将作为数据字典的Key)

  

有时候不是我们失去了目标,而是失去了方向。
原文地址:https://www.cnblogs.com/871735097-/p/4609572.html