基于EF Core的Code First模式的DotNetCore快速开发框架
Nuget [最新版本:2.0.1]
- Install-Package Zxw.Framework.NetCore -Version 2.0.1
- dotnet add package Zxw.Framework.NetCore --version 2.0.1
开发环境
- VS2017 / VS Code
- .net core 2.1
支持的数据库
- SQL Server
- MySQL
- Sqlite
- InMemory
- PostgreSQL
- Oracle (未测试)(第三方驱动Citms.EntityFrameworkCore.Oracle)
- MongoDB (Beta)(第三方驱动Blueshift.EntityFrameworkCore.MongoDB)
日志组件
- log4net
DI组件
- Autofac
- Aspectcore.Injector
缓存组件使用
本项目采用的AOP中间件 :AspectCore-Framework
- MemoryCacheAttribute :基于MemoryCache的缓存拦截组件
- RedisCacheAttribute :基于Redis的缓存拦截组件
如何使用:
public interface ITutorClassTypeRepository:IRepository<TutorClassType, Int32>
{
[MemoryCache]//使用MemoryCache,缓存有效时间默认10分钟
IList<TutorClassType> GetByMemoryCached(Expression<Func<TutorClassType, bool>> where = null);
[RedisCache(Expiration = 5)]//使用Redis,缓存有效时间为5分钟
IList<TutorClassType> GetByRedisCached(Expression<Func<TutorClassType, bool>> where = null);
}
2018/09/24
- 1.实现Oracle for EfCore,引用第三方驱动Citms.EntityFrameworkCore.Oracle
- 2.实现MongoDB for EfCore,引用第三方驱动Blueshift.EntityFrameworkCore.MongoDB
2018/08/26
- 1.添加自定义视图分页查询,数据库分页,目前只支持sqlserver
- 2.update packages
2018/07/06 合并dev分支到master
- 1.添加EFCore直接返回DataTable功能
- 2.DBFirst功能,目前仅支持SQL Server、MySQL、NpgSQL三种数据库。根据已存在的数据表直接生成实体代码,详见CodeGenerator
- 3.添加单元测试项目,并完成对以上两点新功能的测试
- 4.引入IOC容器Aspectcore.Injector,详见AspectCoreContainer.cs
- 本开源项目遵守MIT开源协议。