基于EF Core的Code First模式的DotNetCore快速开发框架
2017-10-15 20:09
519 查看
前言
最近接了几个小单子,因为是小单子,项目规模都比较小,业务相对来说,也比较简单。所以在选择架构的时候,考虑到效率方面的因素,就采取了asp.net+entity framework中的code first模式,从而可以进行快速开发。几个单子做完下来,顺便总结整理一下,近些时候也一直在学习dotnetcore,索性将项目都升级了,于是便有了这一套“基于EF Core的Code First模式的DotNetCore快速开发框架”。至于code first模式的优劣,此文将不再赘述。至于本文的目的,一是为了总结和整理工作这几年所学的一些知识,方便以后能够快速高效地接入项目中。再是分享出来,跟大家一起探讨学习,一起进步。欢迎各路大佬指正和建议^_^
项目地址
GitHub:
dotnetcore版本:https://github.com/VictorTzeng/Zxw.Framework.NetCore
.net framework版本:https://github.com/VictorTzeng/Zxw.Framework.Nfx
码云:
dotnetcore版本:https://gitee.com/ceo_bitch/Zxw.Framework.NetCore
.net framework版本:https://gitee.com/ceo_bitch/Zxw.Framework.Nfx
项目架构
此项目主要分成两部分:Zxw.Framework.NetCore (核心类库)和 NetCore.Sample (示例)两部分。如图所示:
using System; using System.Diagnostics; using Microsoft.AspNetCore.Mvc; using Zxw.Framework.NetCore.CodeGenerator; using Zxw.Framework.NetCore.Helpers; using Zxw.Framework.Website.IServices; using Zxw.Framework.Website.ViewModels; using Zxw.Framework.Website.Models; namespace Zxw.Framework.Website.Controllers { public class HomeController : Controller { private ITutorClassTypeService iTutorClassTypeService; public HomeController(ITutorClassTypeService tutorClassTypeService) { if(tutorClassTypeService==null) throw new ArgumentNullException(nameof(tutorClassTypeService)); iTutorClassTypeService = tutorClassTypeService; } public IActionResult Index() { CodeGenerator.Generate();//生成所有实体类对应的Repository和Service层代码文件 CodeGenerator.GenerateSingle<TutorClassType, int>();//生成单个实体类对应的Repository和Service层代码文件 return View(); } public IActionResult About() { ViewData["Message"] = "Your application description page."; return View(); } public IActionResult Contact() { ViewData["Message"] = "Your contact page."; return View(); } public IActionResult Error() { return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier }); } protected override void Dispose(bool disposing) { if (disposing) { iTutorClassTypeService.Dispose(); } base.Dispose(disposing); } } }View Code
总结
写博客真的很费力,希望自己能够坚持下去。
最后,欢迎各路大佬建议和拍砖~~
相关文章推荐
- 【基于EF Core的Code First模式的DotNetCore快速开发框架】完成对DB First代码生成的支持
- 构建基于MVC+Observer模式的、艺术性的移动开发框架(KJAVA版)(二)
- 构建基于MVC+Observer模式的、艺术性的移动开发框架(KJAVA版)(二)
- 构建基于MVC+Observer模式的、艺术性的移动开发框架(KJAVA版)(二)
- 基于MINA框架快速开发网络应用程序
- 基于.Net 2.0 (C# 2.0, ASP.NET 2.0)的快速开发框架设计NBear V3.3.9 Stable [开源]
- 构建基于MVC+Observer模式的、艺术性的移动开发框架(KJAVA版)(二)
- 构建基于MVC+Observer模式的、艺术性的移动开发框架(KJAVA版)(二)
- 基于MINA框架快速开发网络应用程序
- 基于umi搭建React快速开发框架 01
- 基于MINA框架快速开发网络应用程序
- 构建基于MVC+Observer模式的、艺术性的移动开发框架(KJAVA版)(二)
- 基于MINA框架快速开发网络应用程序
- 基于MINA框架快速开发网络应用程序收藏
- 安卓项目快速开发框架, MVP + Retrofit + RxJava,Activity 和 Fragment 结合 MVP 模式的完整封装,大大减少代码量
- 基于DotNet Core的RPC框架(一) DotBPE.RPC快速开始
- 构建基于MVC+Observer模式的、艺术性的移动开发框架(KJAVA版)(一)
- 基于EF6的快速开发Web框架——Swift.Net
- 基于 Silverlight的快速开发框架RapidSL之MVVM解析