当前位置: 首页 > news >正文

ShenNiusModularity项目源码学习(16:ShenNius.Admin.Mvc项目分析-1)

  ShenNius.Admin.Mvc项目是MVC模式的启动项目,包括了MVC模式下所需的所有的页面、控制器类、资源、js文件等数据,该项目仅依赖ShenNius.Admin.API项目,主要使用后者的ShenniusAdminApiModule模块类及一些依赖项目中定义的辅助类等。本文学习ShenNius.Admin.Mvc项目的结构及零散文件的用法,后续文章中逐步学习每个控制器类及对应页面的用法。
在这里插入图片描述

  ShenNiusModularity项目的结构如上图所示,从下向上逐项介绍:
  ShenniusAdminMvcModule文件为MVC模式的启动模块类,其依赖于ShenNius.Admin.API项目的ShenniusAdminApiModule模块类,后者在项目启动过程中根据启动项目的appsettings.json中的jwt设置来设置身份认证方式及路由映射方式。ShenNius.Admin.Mvc项目的appsettings.json中没有jwt设置,因此项目启动过程中设置使用基于Cookie的身份认证方式,同时设置基于area的路由映射,默认访问home/index地址。

  Controller和Views文件夹内保存的是自媒体内容管理系统的主页面控制器类及页面,虽然默认路由是主页面,身份认证不通过时默认转到登录页面。
在这里插入图片描述

  CustomerFileContentTypeProvider类自定义文件扩展名和MIME类型的映射关系,主要包括zip、less、xlsx等三类扩展名的映射关系,该类在ShenniusAdminMvcModule. OnApplicationInitialization函数内调用。
  VerifyCode类用于生成验证码及验证码图片,前面文章中有详细介绍生成逻辑,主要用在sys/UserController类的OnGetVCode函数内。
  WebExtension类定义了两个扩展函数,ToWebString按自定义格式输出日期字符串,TrimEnd函数用于在字符串A的末尾移除指定的字符串B并返回移除后的子字符串,该类主要用在页面中,在此不再一一列举。
  Area文件夹下按系统管理(Sys)、CMS模块(Cms)、商城模块(Shop)分文件夹保存各自的控制器类及页面,后续文章中会逐一学习并记录。
在这里插入图片描述

  wwwroot文件夹下包含以下子文件夹,分别保存自定义css文件、图标、第三方js库(jquery、layui、signalr、echarts、layui扩展库等)。
在这里插入图片描述

参考文献:
[1]https://gitee.com/shenniu_code_group/shen-nius.-modularity

相关文章:

  • 鸿蒙开发:实现AI打字机效果
  • 【“以退为进“、“不得已而为之“与“风险对冲“的协同机制】
  • 大模型训练全流程深度解析
  • Deepseek-R1大模型微调实战技术深度解析
  • Qt 控件概述 QWdiget
  • 第一次使用腾讯云服务器部署项目记录与总结
  • Java 大视界 -- Java 大数据中的异常检测算法在工业物联网中的应用与优化(133)
  • ABAP语言的动态编程(4) - 综合案例:管理费用明细表
  • 如何配置 Docker 以实现无需 sudo 使用
  • 蓝桥杯十天冲刺-day1(getline读入空格)
  • 人工智能与人的智能,改变一生的思维模型【8】逆向思维
  • DeepSeek-R1大模型微调技术深度解析:架构、方法与应用全解析
  • 星越L_内后视镜使用讲解
  • 【AI】内容生成式AI(AIGC)的深度分析与扩展
  • 【Android】RuntimeShader 应用
  • SEO新手基础优化三步法
  • 【MATLAB实战】实现白鲸算法(BWO)优化BP神经网络:提升模型性能的新思路
  • 使用 BookMarkHub 插件进行书签同步
  • 小柒的逆序对
  • 历年华中科技大学计算机考研复试上机真题
  • 普京与卢卡申科举行会晤,将扩大在飞机制造等领域合作
  • 人社部:将制定提前领取个人养老金相关办法
  • 安徽省公安厅原副厅长刘海石主动投案,正接受审查调查
  • 电话费被私改成48元套餐长达数年,投诉后移动公司退补600元话费
  • 广西干旱程度有所缓解,未来一周旱情偏重地区降水量仍不足
  • 牛市早报|国家发改委:将推出做好稳就业稳经济推动高质量发展若干举措