• vs2015添加T4模版


    <#@ template language="C#" debug="false" hostspecific="true"#>
    <#@ include file="EF6.Utility.CS.ttinclude"#><#@ 
    output extension=".cs"#><#
    
    // 声明明edmx文件的位置变量
    const string inputFile = @"../Simple.Domain/Model.edmx";
    var textTransform = DynamicTextTransformation.Create(this);
    var code = new CodeGenerationTools(this);
    var ef = new MetadataTools(this);
    var typeMapper = new TypeMapper();
    var    fileManager = EntityFrameworkTemplateFileManager.Create(this);
    var itemCollection = new EdmMetadataLoader(textTransform.Host, textTransform.Errors).CreateEdmItemCollection(inputFile);
    
    #>//------------------------------------------------------------------------------
    // 请不要手动修改此文件中的代码
    //------------------------------------------------------------------------------
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Simple.Domain;//引用Domain的命名空间
    
    namespace Simple.IDAO
    {
    
    <#
    foreach (var entity in typeMapper.GetItemsToGenerate<EntityType>(itemCollection))
    {
    // 不需要新建文件
    //fileManager.StartNewFile(entity.Name + ".cs");
    
    #>    public interface I<#=entity.Name#>Dao:IBaseDao<<#=entity.Name#>> //生成实体对象接口
        {
        }
    
    <#   
    }
    #>
    
    }
    //end namespace
    <#+
    // 这个类必不可少
    public class TypeMapper
    { 
    
    // 这个方法必须有用
    public IEnumerable<T> GetItemsToGenerate<T>(IEnumerable<GlobalItem> itemCollection) where T: EdmType
    {
    return itemCollection
    .OfType<T>()
    .Where(i => true)
    .OrderBy(i => i.Name);
    }
    
    }
    
    public static void ArgumentNotNull<T>(T arg, string name) where T : class
    {
    if (arg == null)
    {
    throw new ArgumentNullException(name);
    }
    }
    #>
  • 相关阅读:
    烦人的警告 Deprecated: convertStrings was not specified when starting the JVM
    Python 推送RabbitMQ
    JavaScript-json数组排序
    CSS-返回顶部代码
    CSS-页面滑屏滚动原理
    CSS-图像映射
    CSS-下拉导航条
    CSS-background-position百分比
    CSS- 横向和纵向时间轴
    JavaScript-闭包深入浅出
  • 原文地址:https://www.cnblogs.com/no27/p/7160604.html
Copyright © 2020-2023  润新知