前言

距离上一篇文章《基于EF Core的Code First模式的DotNetCore快速开发框架》已过去大半个年头,时光荏苒,岁月如梭。。。比较尴尬的是,在这大半个年头里,除了日常带娃溜娃做饭,偶尔接几个私单外,个人开源项目几乎没啥动静。那么日常工作干些什么呢?肯定是坚守Nfx啊。。。为什么呢?不做Nfx那是不可能的,毕竟要吃饭...讲真,大山城作为新进一线网红大城市环境,dotneter们活得非常坚挺的,眼看又一波猛涨的房价和这危机年,还是默默加完班后夜跑几十公里,锻炼好身体,多做几单深夜兼职,兴许运气来了能碰一个少奋斗20年的捷径...前提是得做好各种滴水不漏的安全措施以防止猝死暴毙...

至于多坑还是坑多,早已傻傻分不清,坊间谣传民间大神的【重庆求职防坑手册】早已被喷的不能自已,甚至已经下架

契机

前不久,科技巨头微软粑粑发布了dotnetcore 2.1,以其一贯的尿性作风,应该可以上车了。然而我还在坚守Nfx,毕竟公司成熟平台成熟产品以及成熟人力结构,冒然大跃进是肯定要承担各种被扣帽子风险的。虽然明面上上车无望,私下勾搭还是有戏。前些时日,接到道友们热情诚挚的需求,添加对DB First的支持,懒人有懒福...

更新内容

Gayhub地址:https://github.com/VictorTzeng/Zxw.Framework.NetCore
 
具体更新内容,大大小小还是有点多,这里就不啰嗦正经的话,具体情况具体代码里见。
  1. 添加EFCore直接返回DataTable功能
  2. DBFirst功能,目前仅支持SQL Server、MySQL、NpgSQL三种数据库。根据已存在的数据表直接生成实体代码,详见CodeGenerator
  3. 添加单元测试项目,并完成对以上两点新功能的测试
  4. 引入IOC容器Aspectcore.Injector,详见AspectCoreContainer.cs

手拿来,手把手摸你

目前仅支持Sqlserver、MySQL、NpgSQL等三种数据库,具体用法如下:

  1. 注入DbContextOption
  2.              services.Configure<DbContextOption>(options =>
    {
    options.ConnectionString =
    "User ID=zengxw;Password=123456;Host=localhost;Port=5432;Database=ZxwPgDemo;Pooling=true;";
    });
    services.AddScoped<IDbContextCore, PostgreSQLDbContext>(); //注入EF上下文

    注入CodeGenerateOption

  3.              services.Configure<CodeGenerateOption>(options =>
    {
    options.OutputPath = "F:\\Test\\PostgreSQL";
    options.ModelsNamespace = "Zxw.Framework.Website.Models";
    options.IRepositoriesNamespace = "Zxw.Framework.Website.IRepositories";
    options.RepositoriesNamespace = "Zxw.Framework.Website.Repositories";
    options.ControllersNamespace = "Zxw.Framework.Website.Controllers";
    });

    调用GenerateAllCodesFromDatabase生成所有代码

 CodeGenerator.GenerateAllCodesFromDatabase(true);

总结与计划

工作之余,多陪家人多陪孩子,多读书多看报,多锻炼身体,毕竟钱是挣不完的。。。如果各位道友有多的可以全都扔过来,哈哈哈
 
关于计划,不过于长期坚持下去,比如近期打算重写支付模块和引入企业微信。
 
另外,如果有私单合作或者商务合作,又或者优质岗位推荐,24小时全天全月全年随时欢迎留言或者私信~~

【基于EF Core的Code First模式的DotNetCore快速开发框架】完成对DB First代码生成的支持的更多相关文章

  1. 基于EF Core的Code First模式的DotNetCore快速开发框架

    前言 最近接了几个小单子,因为是小单子,项目规模都比较小,业务相对来说,也比较简单.所以在选择架构的时候,考虑到效率方面的因素,就采取了asp.net+entity framework中的code f ...

  2. C# 嵌入dll 动软代码生成器基础使用 系统缓存全解析 .NET开发中的事务处理大比拼 C#之数据类型学习 【基于EF Core的Code First模式的DotNetCore快速开发框架】完成对DB First代码生成的支持 基于EF Core的Code First模式的DotNetCore快速开发框架 【懒人有道】在asp.net core中实现程序集注入

    C# 嵌入dll   在很多时候我们在生成C#exe文件时,如果在工程里调用了dll文件时,那么如果不加以处理的话在生成的exe文件运行时需要连同这个dll一起转移,相比于一个单独干净的exe,这种形 ...

  3. EF Core 的 Code First 模式

    0 前言 本文正文第一节,会对 Code First 进行基本的介绍,以及对相关名词进行说明,读者一开始可以不用在这里消耗过多时间,可以先操作一遍例子,再回过头理解. 第二节,以一个简单的例子,展示 ...

  4. EF Core学习Code First

    下面通过实例来学习EF Core Code First,也就是通过EF Core迁移来完成从模型生成数据库. 本实例使用EntityFrameworkCore SQLite 数据库进行介绍,大家也可以 ...

  5. EF Core的Code First 基础

    一.创建实体类与映射类 通过NuGet引用Microsoft.EntityFrameworkCore 1.创建实体类 Code First可以通过为实体类字段添加相应特性,来创建对应的字段类型等,举例 ...

  6. .net Core 基于EF Core 实现数据库上下文

    在做项目时,需要将某一些功能的实体建立在另一个数据库中,连接不同的数据库用以存储记录.通过查找资料,实现EF Core上下文. 下面是实现上下文后的解决方案的目录: 1.UpAndDownDbCont ...

  7. 基于DotNet Core的RPC框架(一) DotBPE.RPC快速开始

    0x00 简介 DotBPE.RPC是一款基于dotnet core编写的RPC框架,而它的爸爸DotBPE,目标是实现一个开箱即用的微服务框架,但是它还差点意思,还仅仅在构思和尝试的阶段.但不管怎么 ...

  8. 基于现有数据库的Code First模式迁移更新数据库

    本文讨论的内容是基于EF4.1版本.文中谈论的现有的数据库不是由EF创建.本文假定你已经对Code First迁移有一定的了解,如果不了解Code First迁移更新数据库可以查看 文章涉及的主题如下 ...

  9. EF 下的code fist 模式编程

    EF 分两种模式 codefirst(就是不知道数据是啥,也没有数据库)  和 database fist (数据已经设计好了) 首先打开vs  新建一个项目 创建一个控制台程序 然后 新建一个Tea ...

随机推荐

  1. Spark2 Dataset去重、差集、交集

    import org.apache.spark.sql.functions._ // 对整个DataFrame的数据去重 data.distinct() data.dropDuplicates() / ...

  2. 21ic编辑推荐:从单片机开始的程序运行

    一直不清楚单片机中程序的执行过程,就是知道一个程序总是从一个main函数开始执行,然后把程序段存放在ROM里面,动态数据存放在RAM里面,而单片机的RAM资源又是及其的稀少,所以要省着用,但是到底怎么 ...

  3. hdu2586(LCA最近公共祖先)

    How far away ? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  4. JAVAORM框架之Mybatis (Ibatis) 详解

    目录 Mybatis基础概念 Mybatis开放方式演进 Mybatis框架核心要点 关联查询 延迟加载(懒加载) 动态SQL Mybatis缓存 Mybatis逆向工程 PageHelper分页插件 ...

  5. Keepalived指定文件接收日志

    keepalived默认日志接收文件为/var/log/messages不方便查看,可以指定文件接收日志 修改配置文件/etc/sysconfig/keepalived KEEPALIVED_OPTI ...

  6. Keepalived+Nginx高可用集群

    Keepalived简介 Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替 ...

  7. slam学习资源

    从零开始学slam: http://blog.csdn.net/akunainiannian/article/details/45363731 史上最全的SLAM学习资料收集  http://www. ...

  8. 51nod 1126 - 求递推序列的第N项 - [找规律]

    题目链接:https://cn.vjudge.net/problem/51Nod-1126 有一个序列是这样定义的:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + ...

  9. compile time - run-time

    php.net Class member variables are called "properties". You may also see them referred to ...

  10. swiper跳转制定页面

    haha(){ var that=this; that.$refs.mySwiper.swiper.slideTo(1, 1000, false); } //以上代码是  获取ref值为myswipe ...