T4模板生成model类


T4模板生成多个文件的model类 适用于oracle数据库
资源截图
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Oracle.ManagedDataAccess.Client;
using System.Data;

namespace T4temple
{
    public class Config
    {
        public static readonly string DatabaseType = “Oracle“;

        public static string ConnectionString = “Data Source=(DEscriptION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.236)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)));User Id=clcrm;Password=clcrm;“;

        public static readonly string TablePrefix = “OA_“;
    }

    public class Column
    {
        DataColumn columnbase;

        public Column(DataColumn columnbase)
        {
            this.columnbase = columnbase;
        }


        public string ColumnName { get { return this.columnbase.ColumnName; } }

        public string MaxLength { get { return this.columnbase.MaxLength.ToString(); } }


        public string TypeName
        {
            get
            {
                string result = string.Empty;
                result = this.columnbase.DataType.Name;
                return result;
            }
        }


        public string DBType
        {
            get
            {
                DbType dbt;
                try
                {
                    dbt = (DbType)Enum.Parse(typeof(DbType) this.columnbase.DataType.Name);
                }
                catch
                {
                    dbt = DbType.object;
                }
                return dbt.ToString();
            }
        }


        public bool AllowDBNull { get { return this.columnbase.AllowDBNull; } }

        public string UpColumnName
        {
            get
            {
                return string.Format(“{0}{1}“ this.ColumnName[0].ToString().ToUpper() this.ColumnName.Substring(1).ToLower());
            }
        }

        public string LowerColumnName
        {
            get
            {
                return string.Format(“{0}{1}“this.ColumnName[0].ToString().ToLower()this.ColumnName.Substring(1));
            }
        }
    }

    public class Table
    {
        public Table(DataTable t)
        {
            this.PKs = this.GetPKList(t);
            this.Columns = this.GetColumnList(t);
            this.ColumnTypeNames = this.SetColumnNames();
        }

        public List PKs;

        public string TableName { get; set; }

        public List Columns;

        public string ColumnTypeNames;

        public Column FirstPK
        {
            get
            {
                return this.PKs[0];
            }
        }

        public string EntityName
        {
            get
            {
                string result = this.TableName;
                string tablePrefix = Config.TablePrefix;
                if (this.TableName.StartsWith(tablePrefix))
                {
                    result = this.TableName.Substring(tablePref

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件    4055552  2016-12-13 13:15  T4templeT4templeinDebugOracle.ManagedDataAccess.dll

     文件      63488  2016-12-13 14:16  T4templeT4templeinDebugT4temple.exe

     文件     108032  2016-12-13 14:16  T4templeT4templeinDebugT4temple.pdb

     文件      24216  2016-12-13 14:18  T4templeT4templeinDebugT4temple.vshost.exe

     文件       7211  2016-12-13 14:16  T4templeT4templeDBSchema.cs

     文件       7401  2016-12-13 14:08  T4templeT4templeDBSchema.ttinclude

     文件    4055552  2016-12-13 13:15  T4templeT4templelibOracle.ManagedDataAccess.dll

     文件       4638  2016-12-13 11:31  T4templeT4templeMultiDocument.ttinclude

     文件         25  2016-12-13 14:08  T4templeT4templeMultModelAuto.cs

     文件       2296  2016-12-13 14:08  T4templeT4templeMultModelAuto.tt

     文件        963  2016-12-13 14:08  T4templeT4templeOA_AGENCY.cs

     文件        802  2016-12-13 14:08  T4templeT4templeOA_AGENCYHIS.cs

     文件       2215  2016-12-13 14:08  T4templeT4templeOA_BANK.cs

     文件       1586  2016-12-13 14:08  T4templeT4templeOA_COMMUNICATE.cs

     文件       1952  2016-12-13 14:08  T4templeT4templeOA_COMPANY.cs

     文件       2535  2016-12-13 14:08  T4templeT4templeOA_CONTACT.cs

     文件       2183  2016-12-13 14:08  T4templeT4templeOA_FINACE.cs

     文件       1615  2016-12-13 14:08  T4templeT4templeOA_FOLLOW.cs

     文件       1702  2016-12-13 14:08  T4templeT4templeOA_INFO.cs

     文件       2140  2016-12-13 14:08  T4templeT4templeOA_INFOSETTING.cs

     文件       1315  2016-12-13 14:08  T4templeT4templeOA_MENUS.cs

     文件        447  2016-12-13 14:08  T4templeT4templeOA_MENUSPART.cs

     文件       1463  2016-12-13 14:08  T4templeT4templeOA_OAFILE.cs

     文件       2101  2016-12-13 14:08  T4templeT4templeOA_OALOG.cs

     文件       1060  2016-12-13 14:08  T4templeT4templeOA_PART.cs

     文件       1481  2016-12-13 14:08  T4templeT4templeOA_PLAN.cs

     文件       1186  2016-12-13 14:08  T4templeT4templeOA_SECTORS.cs

     文件       2905  2016-12-13 14:08  T4templeT4templeOA_SETTING.cs

     文件       1904  2016-12-13 14:08  T4templeT4templeOA_SIGN.cs

     文件       1010  2016-12-13 14:08  T4templeT4templeOA_SIGNFOLLOW.cs

............此处省略39个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)