最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

NopCommerce架構(gòu)分析之(四)基于路由實現(xiàn)靈活的插件機(jī)制

 更新時間:2016年04月07日 10:14:25   作者:WalsonTung  
本文主要介紹NopCommerce中,通過注冊路由,實現(xiàn)插件的機(jī)制,同時,NopCommerce中每個插件都集成IPlugin接口,插件擁有安裝和卸載的功能。

NopCommerce支持靈活的插件機(jī)制,所謂Web系統(tǒng)插件,其實也就是可以像原系統(tǒng)的一部分一樣使用。

Web系統(tǒng)的使用方式就是客戶端發(fā)送一個請求,服務(wù)端進(jìn)行解析。在asp.net MVC中對客戶請求的解析是通過路由的方式實現(xiàn)的。

所謂路由就是在客戶端發(fā)生請求時,對請求路徑的解析過程。

在Global.asax.cs中注冊所有路由類:

//register custom routes (plugins, etc) 
var routePublisher = EngineContext.Current.Resolve<IRoutePublisher>(); 
routePublisher.RegisterRoutes(routes); 

IRoutePublisher:路由發(fā)布者,以主動的方式向系統(tǒng)添加路由。實體類為:RoutePublisher。

IRouteProvider:路由提供者,每個插件都有一個路由提供者,向系統(tǒng)中注冊路由。

路由發(fā)布者(IRoutePublisher)通過IOC在運行環(huán)境路徑中查找路由提供者,即查找所有繼承IRouteProvider的類。然后有各插件的路由提供者向系統(tǒng)中注冊此插件的路由。

PluginManager:插件管理器,負(fù)責(zé)加載插件的DLL,并保存所有插件信息。此管理器在系統(tǒng)初始化時開始啟動并通過Initialize方法加載所有插件。

IPluginFinder:插件查找者,在使用時從插件管理器中查找插件。

每一個插件都擁有自描述文件:Description.txt; 類PluginDescriptor負(fù)責(zé)保存解析后的插件描述或者說是此描述文件的解析后實體類。

每個插件都集成IPlugin接口,插件擁有安裝和卸載的功能。

~/App_Data/InstalledPlugins.txt:保存所有加載或安裝了的插件。
~/Plugins:安裝的插件所在目錄。
~/Plugins/bin:每一個插件都會在此處建立一個備份。

相關(guān)文章

最新評論

南陵县| 江油市| 顺平县| 肥城市| 游戏| 柯坪县| 和林格尔县| 鄢陵县| 彭山县| 蓬莱市| 阿勒泰市| 巨野县| SHOW| 登封市| 江津市| 封丘县| 平原县| 吉木萨尔县| 浦县| 沈丘县| 西充县| 竹北市| 策勒县| 奈曼旗| 广灵县| 建水县| 宿州市| 舞阳县| 太湖县| 延长县| 平邑县| 开封市| 宣武区| 潞城市| 平塘县| 杭州市| 仪征市| 南安市| 年辖:市辖区| 天气| 泉州市|