entity framework model.tt 模板修改示例
2015-09-26 18:02
141 查看
//添加引用 public string UsingDirectives(bool inHeader, bool includeCollections = true) { return inHeader == string.IsNullOrEmpty(_code.VsNamespaceSuggestion()) ? string.Format( CultureInfo.InvariantCulture, "{0}using System;{1}{3}" + "{2}", inHeader ? Environment.NewLine : "", includeCollections ? (Environment.NewLine + "using System.Collections.Generic;") : "", inHeader ? "" : Environment.NewLine, Environment.NewLine + "using System.Runtime.Serialization;") : ""; } //给属性增加[DataMember] public string Property(EdmProperty edmProperty) { return string.Format( CultureInfo.InvariantCulture, "{5}{0} {1} {2} {{ {3}get; {4}set; }}", Accessibility.ForProperty(edmProperty), _typeMapper.GetTypeName(edmProperty.TypeUsage), _code.Escape(edmProperty), _code.SpaceAfter(Accessibility.ForGetter(edmProperty)), _code.SpaceAfter(Accessibility.ForSetter(edmProperty)), "[DataMember]" + Environment.NewLine); } //上面没有对齐,加一个tab public string Property(EdmProperty edmProperty) { return string.Format( CultureInfo.InvariantCulture, "{5}\t{0} {1} {2} {{ {3}get; {4}set; }}", Accessibility.ForProperty(edmProperty), _typeMapper.GetTypeName(edmProperty.TypeUsage), _code.Escape(edmProperty), _code.SpaceAfter(Accessibility.ForGetter(edmProperty)), _code.SpaceAfter(Accessibility.ForSetter(edmProperty)), "[DataMember]" + Environment.NewLine); } //给类添加[DataContract] public string EntityClassOpening(EntityType entity) { return string.Format( CultureInfo.InvariantCulture, "{4}{0} {1}partial class {2}{3}", Accessibility.ForType(entity), _code.SpaceAfter(_code.AbstractOption(entity)), _code.Escape(entity), _code.StringBefore(" : ", _typeMapper.GetTypeName(entity.BaseType)), "[DataContract]" + Environment.NewLine); } 生成的实体类为 //------------------------------------------------------------------------------ // <auto-generated> // This code was generated from a template. // // Manual changes to this file may cause unexpected behavior in your application. // Manual changes to this file will be overwritten if the code is regenerated. // </auto-generated> //------------------------------------------------------------------------------ namespace model { using System; using System.Collections.Generic; using System.Runtime.Serialization; [DataContract] public partial class news { [DataMember] public int id { get; set; } [DataMember] public string title { get; set; } [DataMember] public string body { get; set; } [DataMember] public string author { get; set; } [DataMember] public Nullable<System.DateTime> created { get; set; } [DataMember] public Nullable<System.DateTime> modified { get; set; } } }
相关文章推荐
- 动态规划——线性
- Linux常用命令之压缩与解压命令
- iOS - MAC OS X 系统终端的常用命令
- Oracle性能优化顺序表名称来选择最有效的学习笔记
- 事件传递:响应者链条
- C语言实现自动关机的小程序
- 链表综合
- Hibernate常见错误
- Java数据结构与算法之有序数组的插入和合并
- DevExpress SpreadSheetControl 单元格解除保护
- WIN7 活动窗口不能显示到最前端
- JavaSE--- 网络编程
- 机器学习之无监督学习与监督学习的区别
- 关于ubuntu14.04LTS 64位 播放优酷视频
- Kolor Neutralhazer v1.0.2 (照片雾气模糊去除过滤器)+破解RI
- iOS从0到100 雨笙博客 UIView的用法
- 无知者最可怕
- C语言之变量默认值
- Ubuntu下开发环境搭建
- Android之Touch事件分发机制