zoukankan      html  css  js  c++  java
  • 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);
    }
    }
    #>
  • 相关阅读:
    DataTable中的增删改查
    如何修改SQLServer的登录验证模式为混合验证模式(转载)
    asp.net C# 技术小点
    利用JQuery动态删除Table表格的行和列
    ASP.NET利用JQuery中的Aajax实现JSON数据后台交互
    MySQL Explain 详解
    Python字符串操作
    Linux中last的用法及参数,查看登陆系统用户的信息
    fedora 16 mysql远程连接
    Linux下MySQL 5.5.21 服务器日志配置
  • 原文地址:https://www.cnblogs.com/no27/p/7160604.html
Copyright © 2011-2022 走看看