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

nopCommerce是使用了网站主题的思想,今天我们就开始来讲讲nop中的Themes网站主题实现源码。Nop在管理后台就提供了主题的选择功能,在Configuration=>Settings=>General Aand Miscellaneous Settings。

NopCommerce源码架构详解概述

文章目录

概述

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

内容

NopCommerce是使用了网站主题的思想,今天我们就开始来讲讲nop中的Themes网站主题实现源码。Nop在管理后台就提供了主题的选择功能,在Configuration=>Settings=>General Aand Miscellaneous Settings。如下图:

2020-04-23-18-33-54

Nop安装之后默认的主题是Default Clean。

2020-04-23-18-33-59

Nop主题相关的代码主要在项目Nop.Web和Nop.Web.Framework中。

Nop.Web下面有一个Themes文件夹,这个文件夹是所有主题的根目录,我们打开可以看到一个DefaultClean文件夹,也就是系统自带的主题。如下图:

2020-04-23-18-34-05

里面放了css、图片、js和一个用于加载样式和js脚本的Head视图文件。

同样在项目Nop.Web.Framework中也有一个Themes文件夹,里面都是一些实现网站主题的类。

2020-04-23-18-34-09

这些类主要作用是:

1、IThemeContext和ThemeContext:主题上下文用于调用其它主题相关类,它是主题的入口,也是中心。

2、ThemeProvider和IThemeProvider:主题全部集合:项目的路径~/Themes/,一个主题一个目录,遍历目录并加载每天个主题目录下面的配置信息theme.config

3、ThemeConfiguration:配置信息theme.config对应的封装类

4、ThemeableRazorViewEngine 和ThemeableVirtualPathProviderViewEngine:ThemeableRazorViewEngine继承于ThemeableVirtualPathProviderViewEngine而它又继承于System.Web.mvc下的VirtualPathProviderViewEngine用于重写里面的ViewLocationFormats和CreatePartialView、FindView等方法以支持主题的方式。

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

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

本文观点不代表 .Net中文网 立场,转载请联系原作者。
(6)
上一篇 2020年04月22日 21:10
下一篇 2020年04月22日 21:13

相关推荐

发表回复

登录后才能评论