该 demo 演示了如何使用 fireasy 创建一个后台的管理系统。解决方案包含 asp.net mvc5 和 asp.net core 两个示例,使用 SQLite 数据库,基于 easyui 1.4.3 构建。
该 demo 是基于 Fireasy 框架搭建的,Fireasy 在线文档请点这里进入:http://www.fireasy.cn/docs
注意
特点
项目结构
Fireasy.Zero.Models 实体模型
Fireasy.Zero.Infrastructure 基础设施
Fireasy.Zero.Helpers 相关辅助
Fireasy.Zero.Services 数据服务
Fireasy.Zero.AspNet Mvc5示例
Fireasy.Zero.AspNetCore Core示例
Mvc5 配置
有关 fireasy 的配置请参考 web.config 里的 fireasy 小节,其中:
dataInstances 为数据库实例配置,当前使用 sqlite 数据库
cachings 缓存配置,当前采用 redis ,如果删除此配置,则使用内存作为缓存
containers 为IOC容器配置
mvc/bundles 配置bundle资源文件
注意 global 里对 fireasy 的配置,这些都是必要的
BundleManager.Config();
//MVC控制器工厂添加IOC容器
var container = ContainerUnity.GetContainer();
ControllerBuilder.Current.SetControllerFactory(new ControllerFactory(container));
//easyui验证绑定
SettingsBindManager.RegisterBinder("validatebox", new ValidateBoxSettingBinder());
SettingsBindManager.RegisterBinder("numberbox", new NumberBoxSettingBinder());
//使用 LightEntity 反序列化转换器
GlobalSetting.Converters.Add(new LightEntityJsonConverter());
//从 Container 里反转类型反序列化
GlobalSetting.Converters.Add(new ContainerJsonConverter(container));
core 配置
以上面示例相似,core 的配置在 appsettings.json 里,也是对数据库实例,IOC容器进行配置。
Startup 类文件里的配置(有更新,具体请查看代码)
public void ConfigureServices(IServiceCollection services)
{
services.AddFireasy(Configuration, options =>
{
//注册实体持久化的订阅通知
options.AddSubscriber<EntityPersistentSubject>(string.Empty, subject => new EntitySubscriber().Accept(subject));
})
.AddIoc(ContainerUnity.GetContainer()) //添加 appsettings.json 里的 ioc 配置
.AddEntityContext<DbContext>(options =>
{
options.AutoCreateTables = true; //此项为 true 时, 采用 codefirst 模式维护数据库表
options.NotifyEvents = true; //此项设为 true 时, 上面的实体持久化订阅通知才会触发
});
services.AddMvc()
.AddSessionStateTempDataProvider()
.ConfigureFireasyMvc(options =>
{
options.JsonSerializeOption.Converters.Add(new LightEntityJsonConverter()); //action接收的实体对象,是经过 fireasy 底层处理过的
})
.ConfigureEasyUI();
services.AddSession()
.AddSessionRevive<SessionReviveNotification>(); //session 复活
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型