根据tt文件模板自动生成代码,下面依赖一个edmx,生成代码文件

<span style="font-size:12px;color:#000000;"><#@ template language="C#" debug="false" hostspecific="true"#>
<#@ include file="EF.Utility.CS.ttinclude"#><#@output extension=".cs"#><#CodeGenerationTools code = new CodeGenerationTools(this);
MetadataLoader loader = new MetadataLoader(this);
CodeRegion region = new CodeRegion(this, 1);
MetadataTools ef = new MetadataTools(this);string inputFile = @"..\\Company.OA.Model\\<span style="color:#CC0000;">DataModel.edmx</span>";EdmItemCollection ItemCollection = loader.CreateEdmItemCollection(inputFile);
string namespaceName = code.VsNamespaceSuggestion();EntityFrameworkTemplateFileManager fileManager = EntityFrameworkTemplateFileManager.Create(this);#>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Company.OA.DALFactory;
using Company.OA.IBLL;
using Company.OA.IDAL;
using Company.OA.Model;namespace Company.OA.BLL
{
<#
foreach (EntityType entity in ItemCollection.GetItems<EntityType>().OrderBy(e => e.Name))
{#>  public partial class <#=entity.Name#>Service:BaseService<<#=entity.Name#>>,I<#=entity.Name#>Service //crud{public override void SetCurrentDal(){CurrentDal = DbSession.<#=entity.Name#>Dal;} }
<#}#>
}</span>

生成的文件如下

<span style="font-size:12px;color:#000000;">
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Company.OA.DALFactory;
using Company.OA.IBLL;
using Company.OA.IDAL;
using Company.OA.Model;namespace Company.OA.BLL
{public partial class OrderInfoService:BaseService<OrderInfo>,IOrderInfoService //crud{public override void SetCurrentDal(){CurrentDal = DbSession.OrderInfoDal;} }public partial class TeacherService:BaseService<Teacher>,ITeacherService //crud{public override void SetCurrentDal(){CurrentDal = DbSession.TeacherDal;} }public partial class UserInfoService:BaseService<UserInfo>,IUserInfoService //crud{public override void SetCurrentDal(){CurrentDal = DbSession.UserInfoDal;} }
}</span>

这样我们在edmx中添加一个实体,模板自动给我们生成相应的业务

根据tt文件模板自动生成代码相关推荐

  1. C#分析数据库结构,使用XSL模板自动生成代码

    <html> <head> <TITLE>分析数据库结构,自动生成代码</TITLE> <meta http-equiv="Conten ...

  2. SpringBoot如何自动生成实体类和Dao层以及映射文件(mybatis generator 自动生成代码)

    一.首先添加自动生成代码插件 <!-- mybatis generator 自动生成代码插件 生成时解除注释 --><plugin><groupId>org.myb ...

  3. Mybatis逆向工程自动生成代码文件

    一般来说都会新建另外一个项目,用于生成代码文件,然后拷贝到需要的项目中.新建maven项目用于生成代码文件,项目目录如下所示: pom.xml内容如下: <project xmlns=" ...

  4. 自动生成PDF文件(Java通过PDF模板自动生成PDF)

    思路: 1.创建PDF模板(先创建对应的excel文件,创建好后另存为PDF文件)即可. 2.使用Adobe Acrobat DC工具打开PDF文件,设置自己想要替换的内容. 3.maven项目引入依 ...

  5. 自动生成代码工具 模板工具类

    自动生成代码工具 模板工具类 import java.io.BufferedWriter; import java.io.FileOutputStream; import java.io.Output ...

  6. powerdesigner自动生成代码的修改

    powerdesigner自动生成代码的功能很是强大,但有时候不是很符合我们的想法,因此需要对其模板进行一些修改,如要将数据库中的表生成类文件时,我们需要的是property,但其为我们生成的代码里没 ...

  7. MyBatisPlus自动生成代码springboot+mybatis+mysql 以及动态sql生成方法(测试可用版)

    用了一段时间的springboot,想着百度一下自动生成代码的方式,包括后面如何生成动态sql方法的方式. 摸索了几天,整理一下: ** 1 自动生成代码方式:com.baomidou.mybatis ...

  8. (转)MyBatis框架的学习(七)——MyBatis逆向工程自动生成代码

    http://blog.csdn.net/yerenyuan_pku/article/details/71909325 什么是逆向工程 MyBatis的一个主要的特点就是需要程序员自己编写sql,那么 ...

  9. vue可视化拖拽生成工具_GitHub - 1260215278/dragUI: 基于vuedraggable.js + uni 的可视化拖拽编程,自动生成项目,自动生成代码,自行导入第三方组件...

    dragUI 用于UNI可拖拽可视化编程 在线演示 效果图 基于 快速开始 参考uni官网安装普通uni项目(运行uni-app)运行到浏览器 另需要手动下载包npm install 项目目录 col ...

最新文章

  1. 怎么学python-结合学习经历,谈一谈如何学习Python
  2. Source Insight 4怎么取消函数结束提示字符
  3. lofter 爬虫_本日Lofter德哈tag榜单 20201125
  4. Spring Cloud 设置Feign的日志记录级别
  5. 农业不一定靠规模赚钱
  6. C++中指针和引用的区别与联系
  7. RabbitMQ 学习开发笔记
  8. Windows集群网络负载均衡
  9. 电子商务网站优化之策略篇
  10. Windows XP 优化设置注册文件集合(共80项,请谨慎使用)
  11. 如何在微信小程序中使用echarts绘制地图(微信小程序制作疫情数据地图)
  12. 安装IBM HTTP SERVER
  13. 在电脑上怎么压缩ppt文件?
  14. DS1302时钟芯片的使用
  15. java游戏管理器虚拟按键_Android实现手机游戏隐藏虚拟按键
  16. 查找算法之斐波那契查找算法
  17. 认认真真推荐 10 个优质自学平台
  18. matlab中的rand函数(用于产生随机数)
  19. ie默认连接首页没修改
  20. 火绒剑Mac版在哪里下载

热门文章

  1. Android 实现浏览器跳转APP应用,网页也可以跳转APP
  2. java版溺尸掉三叉戟吗_我的世界溺尸怎么生成_我的世界溺尸掉落什么-街机中国...
  3. MySQL 创建表格
  4. 电脑IOS模拟器用逍遥模拟器电脑上玩部分手游和苹果手机互通
  5. 图技术赋能民生银行创新转型
  6. delphi 图表 控件_将基本图表集成到Delphi应用程序中
  7. IPSEC密钥交换过程
  8. Spring boot-@Qualifier使用
  9. substr()函数截取字符串
  10. emby无法播放服务器位置,解决emby不能播放部分视频一例