1 Star 4 Fork 0

重新读取 / MZFrame

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

MZFrame

介绍

这是一款模块化mvc框架。

框架有如下几个特点,如果下面特点是您正需要的,那么十分推荐您使用本框架。

1、本框架提供模块的热更新,也就是使用本框架可以不停机更新最新版本的模块。

2、易从单服务系统升级到多服务系统。在一些小公司,并不会提供给开发者多台服务器,这时候使用微服务的方案并不划算,但考虑到以后升级改造,又怕单服务不好升级,这时候模块化mvc架构就可以很好的满足这种需求了。

3、模块功能易增加与删除。在很多提供软件产品服务的公司,客户都需要有定制的功能,这时候就需要模块的易增删功能了。

软件架构

ResumeML目录为.net5的mvc实现例子,是一个简历识别和后台管理系统的例子

MyAccess目录包含orm框架、json等

TemplateAction目录为mvc框架

TemplateAction.NetCore目录为mvc框架.net5支持库

安装教程

需要至少vs2019 v16.10打开项目, 需要.net 5。 MZFrame.sln项目为.net framework使用示例 ResumeML/ResumeML.sln项目为.net5使用示例

使用说明

.net5使用方法可查看ResumeML目录里的例子.

  1. MVC视图语法说明

    框架自动识别继承自TABaseController的控制器,其中模块名代表namespace,类名代表controller,方法名代表action。

    视图代码应该用@{代码}或直接@代码然后换行的方式,

    不推荐用标签的写法,只有在使用<m:def var="变量名"></m:def>定义变量时才推荐

- 变量定义

    变量有两种写法$a和a

- 变量输出
    
    @=a可不进行html编码,直接输出

    @a输出经过html编码的字符串

- 函数定义

    函数分为系统函数与自定义函数。  
    系统函数为TemplateAction.Label.TempFuns中定义好的函数  
    自定义函数为通过SetGlobal设置的函数

    调用方法:@函数名(参数名)

    
- 循环语句for

    for语句有两种写法for(($a,$i) in $b)和for($a in $b)

    其中$a变量为集合$b的元素,$i变量为索引号,$b为集合,最后以end结尾

- 条件语句if、else if、else

    示例:  
    @if(条件)  
    语句  
    @else if(条件)  
    语句  
    @else  
    语句  
    @end  
    条件语句最后以end结尾

- 条件循环语句while

    指定条件正确则循环,以end结尾

- 中断语句break

    在有end结尾的语句中都可以使用break提前中断执行

  1. 模块化说明
  • 模块定义
    每个模块下面要定义一个继承自IPluginConfig的类。
    类中的void Configure(IServiceCollection services)方法里注册要给其它模块使用的实例。
    类中的void Loaded(ITAApplication app, PluginObject plg)方法为模块初始化并加载完成后调用。
    在热更新模块时旧的模块Unload方法会被调用,新的模块Loaded方法被调用。

  • 模块使用
    本框架只支持通过构造函数的方式注入。
    模块编译后要放到主项目的Plugin文件夹下,您也可以直接在 生成=》输出目录 里直接设置输出到Plugin文件夹.

  1. 模块化例子使用说明

(1)简历自动分类

测试请求:http://127.0.0.1:880/Home/Index?paragraphdata=[%27%E6%9C%AC%E4%BA%BA%E4%BB%8E%E4%BA%8B%E8%AE%A1%E7%AE%97%E6%9C%BA%27,%27%E7%A6%8F%E5%BB%BA%E7%9C%81%E6%B3%89%E5%B7%9E%E5%B8%82%27,%27%E7%8E%8B%E6%9F%90%E6%9F%90%27,%27%E7%94%B7%27,%27%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%27]


返回结果:{"code":0,"message":"","data":{"TrueName":"王某某","Address":"福建省泉州市","HopePost":null,"Diploma":-1,"Gender":1,"Appraise":"本人从事计算机","WorkList":[{"CompanyName":null,"JobName":"软件开发","Remark":null}],"EduList":[]}}

参与贡献

  1. Fork 本仓库
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

特技

  1. 使用 Readme_XXX.md 来支持不同的语言,例如 Readme_en.md, Readme_zh.md
  2. Gitee 官方博客 blog.gitee.com
  3. 你可以 https://gitee.com/explore 这个地址来了解 Gitee 上的优秀开源项目
  4. GVP 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
  5. Gitee 官方提供的使用手册 https://gitee.com/help
  6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 https://gitee.com/gitee-stars/
MIT License Copyright (c) 2021 重新读取 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

兼容.net core和.net framework的mvc框架,并可让.net framework实现嵌入式http服务器,实现模块化热更新,简单的轻量级orm框架。 展开 收起
C#
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
C#
1
https://gitee.com/mz-cn/MZFrame.git
git@gitee.com:mz-cn/MZFrame.git
mz-cn
MZFrame
MZFrame
master

搜索帮助