色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

GetControllerInstance()方法控制器注入

454398 ? 來源:博客園 ? 作者:金源 ? 2020-11-04 14:33 ? 次閱讀

前言

在上個篇幅中說到從控制器工廠的GetControllerInstance()方法來執(zhí)行控制器的注入,本篇要講是在GetControllerInstance()方法的默認(rèn)實現(xiàn)中涉及到的一些對象類型,使用它們來進行控制器注入。

對象模型

圖1

如上圖1,是在控制器(一)中所講,整個的執(zhí)行過程都包含在DefaultControllerFactory控制器工廠中的GetControllerInstance()方法中,我們再來看一下IControllerActivator接口類型的定義:

 1     public interface IControllerActivator
 2     {
 3         // 摘要:
 4         //     在類中實現(xiàn)時創(chuàng)建控制器。
 5         //
 6         // 參數(shù):
 7         //   requestContext:
 8         //     請求上下文。
 9         //
10         //   controllerType:
11         //     控制器類型。
12         //
13         // 返回結(jié)果:
14         //     創(chuàng)建的控制器。
15         IController Create(RequestContext requestContext, Type controllerType);
16     }

會發(fā)現(xiàn)在里面的定義的Create()方法的簽名和DefaultControllerFactory控制器工廠中的GetControllerInstance()方法簽名相同,這就對了,這就是在GetControllerInstance()方法中的另一個注入點,而在框架默認(rèn)的執(zhí)行中,會有一個默認(rèn)的實現(xiàn)類實現(xiàn)了IControllerActivator接口類型的DefaultControllerActivator類型,因為它是框架內(nèi)部的,訪問級別是私有的,所以我們外部是調(diào)用不了的,我們這里可以自己自定義的實現(xiàn),并且注入到框架中。

IControllerActivator類型實現(xiàn)的注入

先看一下我們自定義的實現(xiàn):

 1 using System.Web.Mvc;
 2 using Ninject;
 3 using ConsoleApplication2;
 4 
 5 namespace MvcApplication.CustomControllerActivator
 6 {
 7     public class NinjectControllerActivator:IControllerActivator
 8     {
 9 
10         private IKernel _NinjectKernel;
11 
12         public NinjectControllerActivator()
13         {
14             _NinjectKernel = new StandardKernel();
15             _NinjectKernel.Bind().To();
16         }
17 
18         public IController Create(System.Web.Routing.RequestContext requestContext, Type controllerType)
19         {
20             IController controller = _NinjectKernel.Get(controllerType) as IController;
21             if (controller != null)
22             {
23                 return controller;
24             }
25             return null;
26         }
27     }

實現(xiàn)的方式和上一篇中的幾乎相同,現(xiàn)在只要在框架初始化的時候把它的實例注冊到框架中就可以了。還是再Global.asax中的Application_Start()方法中來注冊:

1 DefaultControllerFactory defaultControllerFactory =
2                 new DefaultControllerFactory(new CustomControllerActivator.NinjectControllerActivator());
3 ControllerBuilder.Current.SetControllerFactory(defaultControllerFactory);

這里要說的是DefaultControllerFactory類型的構(gòu)造函數(shù)重載中,如果我們傳入了自定義的IControllerActivator類型則會運行我們的,如果沒有則框架會使用默認(rèn)的實現(xiàn)類型。也可以修改我們上一篇中定義的自定義控制器工廠,這里就不作過多的解釋了。

在圖1可以清楚的看到DefaultControllerActivator類型的內(nèi)部實現(xiàn),在控制器(一)一文中有描述,其中還有IDependencyResolver類型的實現(xiàn)類可以來實現(xiàn)控制器的注入,方式和上述的幾乎相近。區(qū)別就是在于IDependencyResolver類型實現(xiàn)的注入是可以面向全局的,這是框架提供給我們的便捷。

到這里控制器的激活以及控制器的動態(tài)注入都講解完畢了。
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16396

    瀏覽量

    178513
收藏 人收藏

    評論

    相關(guān)推薦

    如何通過為TC332微控制器注入ECC錯誤來測試RAM錯誤?

    我們使用的是 TC332 微控制器,我們使用了 MBIST 測試和無損測試方法。 這些測試提供了在測試期間沒有錯誤的肯定答案。 根據(jù) fuSA 的指導(dǎo)方針,我們需要通過注入 ECC 錯誤來測試 RAM 錯誤和 Pflash 錯誤
    發(fā)表于 01-31 06:39

    正弦信號注入PFC控制環(huán)路的方法

    諧波的任意組合,從而可抑制一個以上的諧波。可根據(jù)工作條件動態(tài)調(diào)節(jié)所注入諧波信號的幅值,從而可最大限度提高補償效果。非常靈活的總體固件解決方案,無需其它硬件。該方法可用于任何數(shù)字控制器,包括 UCD3138 和 C2000 微處理
    發(fā)表于 09-12 09:49

    使用諧波注入法降低PFC諧波并改善THD的方法

    幅值諧波的類似方法。這種方法應(yīng)該很容易使用,不僅不涉及額外的硬件成本,而且還非常靈活,可抑制任何階數(shù)的諧波。在 TI UCD3138 等數(shù)字電源控制器的幫助下,我開發(fā)出了一種簡單的諧波注入
    發(fā)表于 09-12 09:47

    基于信號注入的永磁同步電機控制方法

    本文介紹了一種基于脈動高頻電壓信號注入法實現(xiàn)面裝式永磁同步電機無傳感控制方法。利用面裝式永磁同步電機的磁飽和效應(yīng),在和轉(zhuǎn)子同速旋轉(zhuǎn)的坐標(biāo)系注入
    發(fā)表于 05-26 10:00 ?25次下載

    基于信號注入的永磁同步電機控制方法

    本文介紹了一種基于脈動高頻電壓信號注入法實現(xiàn)面裝式永磁同步電機無傳感控制方法。利用面裝式永磁同步電機的磁飽和效應(yīng),在和轉(zhuǎn)子同速旋轉(zhuǎn)的坐標(biāo)系注入
    發(fā)表于 12-14 17:03 ?19次下載

    NandFlash控制器的FPGA實現(xiàn)方法技巧

    NandFlash控制器的FPGA實現(xiàn)方法技巧與程序案例分享。
    發(fā)表于 09-21 09:40 ?78次下載

    基于信號注入的永磁同步電機控制方法

    本文介紹了一種基于脈動高頻電壓信號注入法實現(xiàn)面裝式永磁同步電機無傳感控制方法。利用面裝式永磁同步電機的磁飽和效應(yīng),在和轉(zhuǎn)子同速旋轉(zhuǎn)的坐標(biāo)系注入
    發(fā)表于 07-20 14:45 ?16次下載

    PID控制器設(shè)計與參數(shù)整定方法綜述

    PID控制器設(shè)計與參數(shù)整定方法綜述-2005
    發(fā)表于 03-31 17:46 ?25次下載

    電動汽車用電機控制器設(shè)計方法與實踐

    電動汽車用電機控制器設(shè)計方法與實踐
    發(fā)表于 02-08 02:03 ?54次下載

    基于分?jǐn)?shù)階微積分的PID控制器方法

    隨著分?jǐn)?shù)階理論研究的不斷發(fā)展,分?jǐn)?shù)階控制器方法不僅可以改善系統(tǒng)動態(tài)響應(yīng)特性,而且可以獲得優(yōu)越于傳統(tǒng)PID控制器方法,分?jǐn)?shù)階微積分控制器增加了
    發(fā)表于 11-09 17:26 ?20次下載
    基于分?jǐn)?shù)階微積分的PID<b class='flag-5'>控制器</b><b class='flag-5'>方法</b>

    門禁控制器常見故障排除方法

    本文開始介紹了什么是門禁控制器和門禁控制器主要分類,其次介紹了門禁系統(tǒng)出現(xiàn)故障并且排除的四大方法,最后介紹了門禁控制器常見故障排除。
    發(fā)表于 01-19 08:41 ?4.6w次閱讀
    門禁<b class='flag-5'>控制器</b>常見故障排除<b class='flag-5'>方法</b>

    基于模糊PID控制器的VRV空調(diào)系統(tǒng)設(shè)計方法

    基于模糊PID控制器的VRV空調(diào)系統(tǒng)設(shè)計方法
    發(fā)表于 07-01 16:08 ?3次下載

    無葉風(fēng)扇控制器怎么調(diào) 無葉風(fēng)扇控制器怎么接線

    無葉風(fēng)扇控制器是一種新型的風(fēng)扇控制設(shè)備,以其獨特的設(shè)計和革新的風(fēng)扇技術(shù)而備受關(guān)注。無葉風(fēng)扇控制器通過軸流風(fēng)扇和特殊的進風(fēng)口設(shè)計,將空氣吸入并加速,然后通過噴口進行注入和加熱。與傳統(tǒng)的葉
    的頭像 發(fā)表于 01-24 16:51 ?1848次閱讀

    壓力控制器的正確接線方法

    壓力控制器是一種用于監(jiān)測和控制壓力的自動化設(shè)備,廣泛應(yīng)用于工業(yè)、科研和民用領(lǐng)域。正確接線是確保壓力控制器正常工作的關(guān)鍵。本文將詳細(xì)介紹壓力控制器的接線
    的頭像 發(fā)表于 06-19 10:46 ?2904次閱讀

    瞬態(tài)響應(yīng)與紋波——遲滯控制器中使用的紋波注入技術(shù)分析

    電子發(fā)燒友網(wǎng)站提供《瞬態(tài)響應(yīng)與紋波——遲滯控制器中使用的紋波注入技術(shù)分析.pdf》資料免費下載
    發(fā)表于 10-09 14:34 ?0次下載
    瞬態(tài)響應(yīng)與紋波——遲滯<b class='flag-5'>控制器</b>中使用的紋波<b class='flag-5'>注入</b>技術(shù)分析
    主站蜘蛛池模板: 美女张开大腿| 老师的丝袜脚| 99爱在线观看精品视频| 亚洲欧美在无码片一区二区| 国产精品.XX视频.XXTV| WWW国产无套内射久久| 777午夜精品久久AV蜜臀| 亚洲视频区| 亚洲裸舞 hd| 亚洲成色爱我久久| 亚洲精品国产自在现线最新| 欧美人妇无码精品久久| 美女内射少妇一区二区四区| 葵司中文第一次大战黑人| 久久视频在线视频观品15| 久久涩视频| 男女免费观看在线爽爽爽视频| 蜜芽一二三区| 欧美午夜精品久久久久久浪潮| 激情内射亚洲一区二区三区| 國産麻豆AVMDMD0179| 被免费网站在线视频| 亚洲视频在线免费观看| 亚洲人成7777| 伊人影院蕉久| 最近的2019中文字幕国语HD| 88.7在线收听| RAPPER性骚扰大开黄腔| 操他射他影院| 国产成人免费高清在线观看| 国产欧美一区二区三区视频| 俄罗斯孩交精品| 国产精品久久久久久AV免费不卡| A级超碰视频在线观看| 产传媒61国产免费| 国产成人精品精品欧美| 国产亚洲精品久久久久久入口 | 不卡人妻无码AV中文系列APP| 动漫美女被h动态图| 国产亚洲精品久久久久久禁果TV| 精品国产国产精2020久久日|