freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

最新課題aspnetmvccontroller激活系統(tǒng)詳解總體設(shè)計免費下載-文庫吧資料

2025-03-31 03:50本頁面
  

【正文】 MVC的Controller激活系統(tǒng)無法確定目標哪個類型的Controller應(yīng)該被選用,所以會出現(xiàn)如下圖所示的錯誤。 8: } 9: } 10: } 11: namespace 12: { 13: public class HomeController : Controller 14: { 15: public ActionResult Index() 16: { 17: return (().FullName)。如下面的代碼片斷所示,而Index操作返回的是一個將Controller類型全名為內(nèi)容的ContentResult對象。 27: } 28: protected void Application_Start() 29: { 30: //其他操作 31: RegisterRoutes()。 11: } 12: protected void Application_Start() 13: { 14: //其他操作 15: RegisterRoutes()。我們使用Visual MVC應(yīng)用,并且使用如下所示的默認路由注冊代碼。對于這兩種不同的命名空間優(yōu)先級提升方式,前者(通過路由注冊)指定命名空間具有更高的優(yōu)先級。 7: }而另一種提升命名空間優(yōu)先級的方式就是將其添加到當前的ControllerBuilder中的默認命名空間列表中。 5: public static Route MapRoute(this RouteCollection routes, string name, string url, object defaults, string[] namespaces)。通過這種方式指定的命名空間列表會保存在Route對象的DataTokens屬性表示的RouteValueDictionary字典中,對應(yīng)的Key為“Namespaces”。為了解決這個問題,我們必須為定義了同名Controller類型的命名空間設(shè)置不同的優(yōu)先級,具體來說我們有兩種提升命名空間優(yōu)先級的方式。,而目標Controller的名稱就包含在通過該RouteData的Values屬性表示的RouteValueDisctionary對象中,對應(yīng)的Key為“controller”。 } 8: public static ControllerBuilder Current { get。 5: public void SetControllerFactory(IControllerFactory controllerFactory)。 1: public class ControllerBuilder 2: { 3: public IControllerFactory GetControllerFactory()。如下面的代碼所示,ControllerBuilder定義了一個靜態(tài)只讀屬性Current返回當前ControllerBuilder對象,這是針對整個Web應(yīng)用的全局對象。 6: } 7: public class ContextBase: IServiceProvider 8: { 9: //其他成員 10: public void SetSessionStateBehavior(SessionStateBehavior sessionStateBehavior)。相同的方法同樣定義在ContextBase中,它的子類ContextWrapper重寫了這個方法并在內(nèi)部會調(diào)用封裝的Context的同名方法。 1: public interface IRequiresSessionState 2: {} 3: public interface IReadOnlySessionState : IRequiresSessionState 4: {}具體采用何種會話狀態(tài)行為取決于當前上下文()。如下面的代碼片斷所示,這兩個都是不具有任何成員的空接口(我們一般稱之為標記接口),而IReadOnlySessionState繼承自IRequiresSessionState。 Disabled:禁用會話狀態(tài)。 Required:為請求啟用完全的讀寫會話狀態(tài)行為。IControllerFactory的另一個方法GetControllerSessionBehavior方法返回一個SessionStateBehavior枚舉。 5: void ReleaseController(IController controller)。 1: public interface IControllerFactory 2: { 3: IController CreateController(RequestContext requestContext, string controllerName)。 1: public abstract class Controller : 2: ControllerBase, 3: IController, 4: IAsyncController, 5: IActionFilter, 6: IAuthorizationFilter, 7: IExceptionFilter, 8: IResultFilter, 9: IDisposable, 10: ... 11: { 12: //省略成員 13: }二、 ControllerFactory MVC為Controller的激活定義相應(yīng)的相應(yīng)的工廠,我們將其統(tǒng)稱為ControllerFactory,所有的ControllerFactory實現(xiàn)了接口IControllerFactory接口。該類型中定義了很多的輔助方法和屬性以編程變得簡單。當ControllerBase的Execute方法被執(zhí)行的時候,它會根據(jù)傳入的ReuqestContext創(chuàng)建ControllerContext對象,而后續(xù)的操作可以看成是在該上下文中進行。而通過屬性Context和RouteData屬性返回的ContextBase和RouteData對象在默認情況下實際上就是組成RequestContext的核心元素。 } 13: }顧名思義,ControllerContext就是基于某個Controller對象的上下文。 } 12: public virtual RouteData RouteData { get。 } 11: public virtual ContextBase Context { get。 } 10: public RequestContext RequestContext { get。 9: public virtual ControllerBase Controller { get。 6
點擊復制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1