NopCommerce源码架构详解-Themes网站主题实现源码分析3

上面一篇文章重点介绍了一下ThemeContext和ThemeProvider。下面来结合具体的例子来看看主题的视图是怎么使用ThemeContext的,最后在页面显示是什么效果。

NopCommerce源码架构详解概述

文章目录

概述

NopCommerce源码架构详解-Themes网站主题实现源码分析3。

内容

上面一篇文章重点介绍了一下ThemeContext和ThemeProvider。下面来结合具体的例子来看看主题的视图是怎么使用ThemeContext的,最后在页面显示是什么效果。

nop主题DefaultClean里面只有一个Head.cshtml视图,用于加载对应主题相关的样式和图片。

2020-04-23-20-12-23

Head.cshtml内容下图:

2020-04-23-20-12-28

var themeName = EngineContext.Current.Resolve().WorkingThemeName从IoC容器(Autofac)中获取对应组件(IThemeContext具体实现)并调用其属性WorkingThemeName。

在Nop.Web.Framework.DependencyRegistrar类中的Register方法可以看到如下代码,分别对IThemeProvider和IThemeContext进行了注册:

builder.RegisterType<ThemeProvider>().As<IThemeProvider>().InstancePerLifetimeScope();
builder.RegisterType<ThemeContext>().As<IThemeContext>().InstancePerLifetimeScope();

具体最终的页面html源码如下图:

2020-04-23-20-12-35

对应主题为DefaultClean。

原文出处:蓝狐软件工作室【蓝狐】

原文链接:http://m.lanhusoft.com/Article/349.html

本文观点不代表 .Net中文网 立场,转载请联系原作者。

发表评论

登录后才能评论