Modularity QuickStart学习
?創(chuàng)建及運(yùn)行QuickStart:運(yùn)行文件WebClientFactorySourceInstall.msi.?
QuickStart包含以下模塊:
1.名字為Customers的business module:包含了實(shí)現(xiàn)customer審核流程的2個(gè)view;
2.名字為shell的business module:提供全局網(wǎng)頁的實(shí)現(xiàn),全局網(wǎng)頁時(shí)那些駐留在網(wǎng)站根目錄的的頁面,例如Default.aspx,這個(gè)模塊包含網(wǎng)站可視的風(fēng)格,還注冊(cè)了2個(gè)全局服務(wù):ISiteMapBuilderService、IAuthorizationService ;
3.名字為Navifation的foundational module:該模塊注冊(cè)RedirectNavigationService服務(wù)。應(yīng)用程序使用該服務(wù)進(jìn)行頁面間的導(dǎo)航;
Customer 模塊使用INavigationService 服務(wù)來進(jìn)行view之間的導(dǎo)航,customer模塊與navigation模塊有依賴關(guān)系,Customer模塊頁還使用shell模塊的ISiteMapBuilderService 來注冊(cè)網(wǎng)站地圖節(jié)點(diǎn),即與Shell模塊也有依賴關(guān)系,從以下 customer solution web folder中的web.config就可看出:
?
| Shell及其他foundational module沒有自己的.config文件,他們?cè)趙eb.config中注冊(cè)定義。 <compositeWeb><modules><module name="Shell" assemblyName="ModularityQuickstart.Shell" virtualPath="~/"/><module name="Navigation" assemblyName="ModularityQuickstart.Navigation"/></modules> </compositeWeb> 以下代碼將?RedirectNavigationService 注冊(cè)為全局service: |
?Customers module 中的CustomersController 類使用ServiceDependency 特性來獲取 ?INavigationService的一個(gè)引用:
public CustomersController([ServiceDependency] INavigationService navigationService)
{
??? _navigationService = navigationService;
}
Note:CustomersController? 類不引用INavigationService 的具體實(shí)現(xiàn),ObjectBuilder提供該接口的實(shí)例。這樣的話就很容易替換服務(wù)的實(shí)現(xiàn)。
Customer模塊使用ISiteMapBuilderService 注冊(cè)網(wǎng)站地圖節(jié)點(diǎn):
?
轉(zhuǎn)載于:https://blog.51cto.com/loveu/654980
總結(jié)
以上是生活随笔為你收集整理的Modularity QuickStart学习的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Oracle驱动表
- 下一篇: linux系统加固建议