nopCommerce_4.40.4程序中自定义了大量的HTML控件,在Razor页面中进行使用,本章将讲述nopCommerce_4.40.4带开发者怎样自定义了大量的HTML控件,并在在Razor页面中进行使用,并使页面正常显示。
042 AdminAreaSettings 基础性支撑耦合
AdminAreaSettings类,通过该类及其属性成员实例的默认值,对当前程序中的后台页面进行规范性设置。
043 IPagedModel<T>、BaseNopModel、BasePagedListModel<T>、ILocalizedModel 、ILocalizedModel<TLocalizedModel>、ILocalizedLocaleModel基础性支撑耦合
IPagedModel<T>接口,继承于该类的具体实现类实现了,把模型类中属性成员的名称及其实例化的值发送到指定的Razor页面中,为Razor页面的显示提供支撑。
BaseNopModel类,继承于该类的具体实现类实现了,把模型类中属性成员的名称及其实例化的值发送到指定的Razor页面中,为Razor页面的显示提供支撑。
BasePagedListModel<T>类,继承IPagedModel<T>接口BaseNopModel类,继承于该类的具体实现类实现了,把用于分页操作的模型类中属性成员的名称及其实例化的值发送到指定的Razor页面中,为Razor页面中分页的显示提供支撑。
ILocalizedModel接口,继承于该类的具体实现类实现了,用于把指定的模型类实例进行本地化操作,为Razor页面中本地化显示提供支撑。
ILocalizedModel<TLocalizedModel>接口,继承ILocalizedModel接口, 继承于该类的具体实现类实现了,用于把指定的模型类实例进行本地化操作,为Razor页面中本地化显示提供支撑。
ILocalizedLocaleModel接口,继承于该类的具体实现类可以进行本地化操作。
044 AdminTabStripCreated、CommonExtensions、HtmlExtensions、InputTagHelper、NopSelectTagHelper功能性支撑耦合
AdminTabStripCreated类,通过JavaScript脚本在指定页面上创建一个HTML标签,为指定页面的显示提供支撑。
CommonExtensions类,对时间值进行本地化格式化和对下拉框进行设置。
HtmlExtensions类,自定义(本地化)HTML标签控件。
InputTagHelper类,自定义HTML输入标签控件。
NopSelectTagHelper类,自定义HTML下拉选择框标签控件。
045 NullView、InstallModel、BaseController、BasePublicController、BaseAdminController 功能性支撑耦合
NullView类,获取空视图实例。
InstallModel类,该类在程序第1执行时用于安装页面与当前程序进行数据信息的交换。
BaseController类,继承于该抽象类的具体实现类,通过自定义控制器对Rzeor页面进行显示支撑。
BasePublicController类,继承于该抽象类的具体实现类,通过自定义控制器对Rzeor页面进行显示支撑。
BaseAdminController类,继承于该抽象类的具体实现类,通过自定义控制器对Rzeor页面进行显示支撑。
- 重构Nop.Web.Program类。
注意:
nopCommerce_4.40.x程序以异步方法自定义HTML标签控件和Razor页面,所以需要异步方式启动服务器端的服务器;而在nopCommerce_4.30程序以同步方法自定义HTML标签控件和Razor页面,所以不需要异步方式启动服务器端的服务器;但对于客户端的响应速度来说使用异步方式启动服务器端的服务器更为合适。
- 重构Nop.Web.Controllers.InstallController类。
- 先删除\Nop.Web\wwwroot目录中的所有静态文件;然后复制nopCommerce_4.40.4程序中 \Nop.Web\wwwroot目录中的所有静态文件到前者的目录中。
- 重构页面\Nop.Web\Views\Shared\_ViewImports.cshtml
- 定义页面\Nop.Web\Views\Install\_Install.ConnectionString.cshtml
- 重构页面\Nop.Web\Views\Install\ Index.cshtml
- 按F5执行数据库初始化安装页面中的自定义HTML控件正常显示,并自动开关闭后,在按F5执行首页、登录页面和后台首页正常被显示。
对以上功能更为具体实现和注释见:21-12-02-011_Nop_4.40.4(通过自定义HTML控件,使页面中组件本地化显示)。