最近做的基本上都是做小网站,实在无聊,所以还是决定用这种小项目去踩踩坑,大概看了看,很多必须要用到的框架还是支持的,所以从这个项目开始,打算用.NET CORE 做,首先要解决的就是ORM上的问题。EF先不考虑,以前用了一段时间的EF,实在觉得难受,还是喜欢轻量级的东西。以前一直用DOS.ORM 感觉很顺手,可惜一直没出.NET CORE的版本,尝试多次之后,决定用Chloe.ORM

对于Chloe.ORM,这玩意是没实体生成器的,看了看群上,要么自己写,要么是用动软或其他软件生成,动软这东西实在太老了,试了下有问题,肯定果断放弃这东西了。然后用T4模板试下了,还是有问题,放弃。正当我有点焦灼的时候,突然想到DOS.ORM-TOOL 这东西是开源的,最开始是想稍微修改下源码,支持Chloe.ORM的实体生成就行了,没想到这东西已经完美支持模板生成了。实在开心,于是乎就有下面这么简单的模板去生成整个数据库的实体,这东西很强,简单无BUG,实在是好东西

dos.orm-tool GitHub地址:https://github.com/itdos/Dos.Tool

下载后在Template文件夹下建立一个chloe_mysql.tpl 然后把下面的代码复制进去,保存,在运行exe连接数据库,模板选择chloe_mysql.tpl 即可生成全部实体

后来发现没[NonAutoIncrementAttribute]这个标识好像有问题。。。无语,所以仔细看了看这个工具是可以加[AutoIncrementAttribute]和[NonAutoIncrementAttribute]这两个标识的

using System;
using Chloe.Entity;
namespace @Model.NameSpace
{/// <summary>/// 实体类@(Model.ClassName)。(属性说明自动提取数据库字段的描述信息)/// </summary>[TableAttribute("@Model.TableName")][Serializable]public partial class @Model.ClassName{#region Model
@foreach(var item in Model.Columns)
{@:private @item.TypeName _@item.ColumnName;
}@foreach(var item in Model.Columns)
{@:/// <summary>@:/// @(item.DeText)@:/// </summary>if(item.IsPK){@:[ColumnAttribute(IsPrimaryKey = true)]if(Model.IdentityColumn != null&&item.ColumnName==Model.IdentityColumn.ColumnName){@:[AutoIncrementAttribute]}else{@:[NonAutoIncrementAttribute]}}@:public @item.TypeName @item.ColumnName@:{@:get{ return _@item.ColumnName; }@:set@:{@:this._@item.ColumnName = value;@:}@:}
}#endregion
}
}

Chloe.ORM 实体批量生成相关推荐

  1. FluentData-新型轻量级ORM 利用T4模板 批量生成多文件 实体和业务逻辑 代码

    FluentData,它是一个轻量级框架,关注性能和易用性. 下载地址:FlunenData.Model 利用T4模板,[MultipleOutputHelper.ttinclude]批量生成多文件 ...

  2. [开源].NET数据库访问框架Chloe.ORM

    扯淡 13年毕业之际,进入第一家公司实习,接触了 EntityFramework,当时就觉得这东西太牛了,访问数据库都可以做得这么轻松.优雅!毕竟那时还年轻,没见过世面.工作之前为了拿个实习机会混个工 ...

  3. [开源] FreeSql.AdminLTE.Tools 根据实体类生成后台管理代码

    前言 FreeSql 发布至今已经有9个月,功能渐渐完善,自身的生态也逐步形成,早在几个月前写过一篇文章<ORM 开发环境之利器:MVC 中间件 FreeSql.AdminLTE>,您可以 ...

  4. 黄聪:如何使用CodeSmith批量生成代码(转:http://www.cnblogs.com/huangcong/archive/2010/06/14/1758201.html)...

    先看看CodeSmith的工作原理: 简单的说:CodeSmith首先会去数据库获取数据库的结构,如各个表的名称,表的字段,表间的关系等等,之后再根据用户自定义好的模板文件,用数据库结构中的关键字替代 ...

  5. 如何使用CodeSmith批量生成代码

    在上一篇我们已经用PowerDesigner创建好了需要的测试数据库,下面就可以开始用它完成批量代码生成的工作啦. 下面我会一步步的解释如何用CodeSmith实现预期的结果的,事先声明一下,在此只做 ...

  6. C#CodeSmith代码批量生成模板制作经验分享

    最近忙的有些一头雾水,原本定的计划:每周写一篇技术文章,也被整的'搁浅'了.今天感觉怎么着也得写一篇,要不这个计划可能又很难坚持下去了(ps: 写东西,不仅要时间,更重要的是心情--能静下心去写).直 ...

  7. 黄聪:如何使用CodeSmith批量生成代码(原创系列教程)

    在上一篇我们已经用PowerDesigner创建好了需要的测试数据库,下面就可以开始用它完成批量代码生成的工作啦. 下面我会一步步的解释如何用CodeSmith实现预期的结果的,事先声明一下,在此只做 ...

  8. c mysql实体类生成工具_【干货分享】C# 实体类生成工具

    前言: 项目实战中不论是业务编码还是通用编码,总会归纳出一些通用的工具类.放入项目中一劳永逸,让兄弟姐妹们避免编写重复代码.所以利用了工作之余的时间,将这些散落在多个项目中精致优雅的工具类,归纳起来形 ...

  9. (转)如何使用CodeSmith批量生成代码

    原文:http://www.cnblogs.com/huangcong/archive/2010/06/14/1758201.html 在上一篇我们已经用PowerDesigner创建好了需要的测试数 ...

  10. mysql 存储过程 生成数据_mysql使用存储过程,批量生成测试数据

    1.存储过程代码 delimiter $$ DROP PROCEDURE IF EXISTS create_service_data$$ create procedure create_service ...

最新文章

  1. VC下提前注入进程的一些方法3——修改程序入口点
  2. matlab电力系统潮流计算,大神们,求个电力系统潮流计算的matlab程序。
  3. Web框架之Django_04 模板层了解(过滤器、标签、自定义过滤器、标签、inclusion_tag、模板的继承与导入)
  4. 1039. 到底买不买(20)
  5. Android 布局管理器 之 TableLayout
  6. python输入一个字符串、计算其中小写字符的个数_编写程序,输入一个字符串,统计其中大小写字母数字和其他符号的个数并输出,要求统计过程在函数COUNT中进行...
  7. Redis 4.0深入持久化
  8. MySQL语法一:数据定义语句
  9. linux命令增删改查,hw_linux_study_day003,Linux系统终端中的增删改查命令
  10. node.js安装详细教程
  11. 计算机代数与数论pdf,计算机代数及数论(maple).pdf
  12. android矢量地图画法_Android 矢量室内地图开发实例
  13. 思科arp欺骗攻击,cdp攻击,DHCP攻击实验命令笔记
  14. 结合代谢组学和网络药理学技术发现的差异代谢物和中药成分的药物靶点关联等技术操作
  15. android 测量距离 app,手机测距软件哪个好?6款手机测距APP推荐
  16. 初学Unity3D——材质球
  17. 当你在进行SDK安装更新时,遇到了一些不能安装的项目时,你可以酱紫····
  18. java word 在线编辑图片,_卓正软件 - PageOffice官方网站 - 在线编辑Word、Excel的Office文档控件...
  19. 查看索引是否命中oracle,Oracle索引命中与扫描规律总结
  20. 多尺度生成扩散模型预测蛋白-配体复合物结构的动态骨架

热门文章

  1. matlab欧式期权定价公式,[转载]期权定价的Matlab实现(以欧式看涨期权为例)
  2. 微信公众号文章中插入的图片如何实现滑动效果
  3. [经验分享]大锤教你如何十倍速读一本书
  4. [ffmpeg][goav][issues] goav Dictionary crash double free
  5. 创业1年半,烧光130万:我总结了哪些教训?
  6. 如何快速知道哪些中文期刊是中文核心期刊
  7. SpringMVC从request到controller过程详解
  8. Halcon 阈值算子汇总
  9. 服务器raw格式硬盘,硬盘分区格式变为RAW
  10. 可靠性评价类毕业论文文献都有哪些?