主頁 > 知識庫 > NopCommerce架構(gòu)分析之(四)基于路由實現(xiàn)靈活的插件機制

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

熱門標簽:遂寧市地圖標注app 代理接電話機器人如何取消 地圖標注的公司有哪些 地圖標注專業(yè)團隊 塔城代理外呼系統(tǒng) 濮陽外呼電銷系統(tǒng)怎么樣 地圖定位圖標標注 400電話辦理哪家性價比高 天心智能電銷機器人

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

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

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

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

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

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

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

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

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

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

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

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

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

您可能感興趣的文章:
  • NopCommerce架構(gòu)分析之(八)多語言支持
  • NopCommerce架構(gòu)分析之(七)主題Theme皮膚管理器
  • NopCommerce架構(gòu)分析之(六)自定義RazorViewEngine和WebViewPage
  • NopCommerce架構(gòu)分析之(五)Model綁定Action參數(shù)
  • NopCommerce架構(gòu)分析之(三)EntityFramework數(shù)據(jù)庫初試化及數(shù)據(jù)操作
  • NopCommerce架構(gòu)分析(一)Autofac依賴注入類生成容器
  • 使用Nopcommerce為商城添加滿XX減XX優(yōu)惠券功能
  • 基于nopCommerce的開發(fā)框架 附源碼

標簽:婁底 吉林 宜春 河南 麗江 汕頭 本溪 重慶

巨人網(wǎng)絡(luò)通訊聲明:本文標題《NopCommerce架構(gòu)分析之(四)基于路由實現(xiàn)靈活的插件機制》,本文關(guān)鍵詞  NopCommerce,架構(gòu),分析,之,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《NopCommerce架構(gòu)分析之(四)基于路由實現(xiàn)靈活的插件機制》相關(guān)的同類信息!
  • 本頁收集關(guān)于NopCommerce架構(gòu)分析之(四)基于路由實現(xiàn)靈活的插件機制的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章