欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Modularity QuickStart学习

发布时间:2025/3/15 编程问答 49 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Modularity QuickStart学习 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

 创建及运行QuickStart:运行文件WebClientFactorySourceInstall.msi. 

QuickStart包含以下模块:
1.名字为Customers的business module:包含了实现customer审核流程的2个view;
2.名字为shell的business module:提供全局网页的实现,全局网页时那些驻留在网站根目录的的页面,例如Default.aspx,这个模块包含网站可视的风格,还注册了2个全局服务:ISiteMapBuilderService、IAuthorizationService
3.名字为Navifation的foundational module:该模块注册RedirectNavigationService服务。应用程序使用该服务进行页面间的导航;

Customer 模块使用INavigationService 服务来进行view之间的导航,customer模块与navigation模块有依赖关系,Customer模块页还使用shell模块的ISiteMapBuilderService 来注册网站地图节点,即与Shell模块也有依赖关系,从以下 customer solution web folder中的web.config就可看出:
 

<modules><module name="Customers" assemblyName="ModularityQuickstart.Customers" virtualPath="~/Customers"><dependencies><dependency module="Shell" /><dependency module="Navigation" /></dependencies></module> </modules>

  
Shell及其他foundational module没有自己的.config文件,他们在web.config中注册定义。
<compositeWeb><modules><module name="Shell" assemblyName="ModularityQuickstart.Shell" virtualPath="~/"/><module name="Navigation" assemblyName="ModularityQuickstart.Navigation"/></modules> </compositeWeb>

以下代码将 RedirectNavigationService 注册为全局service:
 

protected virtual void AddGlobalServices(IServiceCollection globalServices) {globalServices.AddNew<RedirectNavigationService, INavigationService>(); }

 Customers module 中的CustomersController 类使用ServiceDependency 特性来获取  INavigationService的一个引用:

public CustomersController([ServiceDependency] INavigationService navigationService)
{
    _navigationService = navigationService;
}
Note:CustomersController  类不引用INavigationService 的具体实现,ObjectBuilder提供该接口的实例。这样的话就很容易替换服务的实现。

Customer模块使用ISiteMapBuilderService 注册网站地图节点:
 

protected virtual void RegisterSiteMapInformation(ISiteMapBuilderService siteMapBuilderService) {SiteMapNodeInfo moduleNode = new SiteMapNodeInfo("Customers", "~/Customers/ApproveCustomerView.aspx", "Approve Customer");siteMapBuilderService.AddNode(moduleNode); }

转载于:https://blog.51cto.com/loveu/654980

总结

以上是生活随笔为你收集整理的Modularity QuickStart学习的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。