打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Models 自动生成器

<%@ CodeTemplate Language="C#" TargetLanguage="Text" Src="" Inherits="" Debug="False" Description="Template description here." %>
<%@ Property Name="SampleStringProperty" Type="System.String" Default="SomeValue" Optional="True" Category="Strings" Description="This is a sample string property." %>
<%@ Property Name="SampleBooleanProperty" Type="System.Boolean" Default="True" Optional="False" Category="Booleans" Description="This is a sample boolean property." %>
<%@ Assembly Name="System.Data" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Property Name="nameSpace" Type="String" Default="Book" Optional="False" Category="" Description="" OnChanged="" Editor="" EditorBase="" Serializer="" %>
<%@ Assembly Name="SchemaExplorer" %>
<%@ Import Namespace="SchemaExplorer" %>
<%@ Property Name="DataBaseSource" Type="SchemaExplorer.DatabaseSchema" Category="Context" Description="" %>
<%@ Property Name="index" Type="System.Int32" Default="1" Optional="False" Category="" Description="" OnChanged="" Editor="" EditorBase="" Serializer="" %>
<%@ Import Namespace="System.IO" %>
///??:jiedamu
///??:<%=DateTime.Now.ToShortDateString() %>
///??:???<%= StringUtil.ToPascalCase(DataBaseSource.Tables[index].Name) %>
using System;
using System.Data.Common;
using System.Collections.Generic;
using System.Text;

namespace Model
{
 public class <%= StringUtil.ToPascalCase(DataBaseSource.Tables[index].Name) %>
 {
 <%
 //?????????????
 foreach(ColumnSchema col in DataBaseSource.Tables[index].Columns)
 {
 %>
  <%-- ???? --%>
  private <%=GetType(col.DataType) %> <%=StringUtil.ToCamelCase(col.Name) %>;
  <%-- ???? --%>
  public <%=GetType(col.DataType) %> <%=StringUtil.ToPascalCase(col.Name) %>
  {
   set { this.<%=StringUtil.ToCamelCase(col.Name) %> = value; }
   get { return this.<%=StringUtil.ToCamelCase(col.Name) %>; }
  }
  
 <%
 }
 %>
 }
}
<script runat="template">
 public string GetType(System.Data.DbType dbType)
    {
        switch (dbType)
        {

            case DbType.AnsiString:

                return "string";

            case DbType.AnsiStringFixedLength:

                return "string";

            case DbType.Binary:

                return "byte[]";

            case DbType.Boolean:

                return "bool";

            case DbType.Byte:

                return "byte";

            case DbType.Currency:

                return "decimal";

            case DbType.Date:

                return "DateTime";

            case DbType.DateTime:

                return "DateTime";

            case DbType.Decimal:

                return "decimal";

            case DbType.Double:

                return "double";

            case DbType.Guid:

                return "Guid";

            case DbType.Int16:

                return "short";

            case DbType.Int32:

                return "int";

            case DbType.Int64:

                return "long";

            case DbType.Object:

                return "object";

            case DbType.SByte:

                return "sbyte";

            case DbType.Single:

                return "float";

            case DbType.String:

                return "string";

            case DbType.StringFixedLength:

                return "string";

            case DbType.Time:

                return "DateTime";

               

            case DbType.UInt16:

                return "ushort";

            case DbType.UInt32:

                return "uint";

            case DbType.UInt64:

                return "ulong";

            case DbType.VarNumeric:

                return "decimal";

            case DbType.Xml:

                return "string";

            default:

                return "object";

        }

    }
 public override void Render(TextWriter writer)
 {
  string path1 =OutputDirectory + StringUtil.ToPascalCase(DataBaseSource.Tables[index].Name) + ".cs";
  System.Diagnostics.Trace.WriteLine(path1);
  StreamWriter fileWriter1 = new StreamWriter(path1,false);
  this.Response.AddTextWriter(fileWriter1);
  base.Render(writer);
  fileWriter1.Close();
 }
 private string _outputDirectory = String.Empty;

 [Editor(typeof(System.Windows.Forms.Design.FolderNameEditor), typeof(System.Drawing.Design.UITypeEditor))]
 [Optional]
 [Category("Output")]
 [Description("The directory to output the results to.")]
 public string OutputDirectory
 {
  get
  {
    // default to the directory that the template is located in
    if (_outputDirectory.Length == 0) return this.CodeTemplateInfo.DirectoryName;
 
    return _outputDirectory;
  }
  set
  {
    if (!value.EndsWith("//")) value += "//";
    _outputDirectory = value;
  }
 }
</script>

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
CodeSmith .NET三层架构模板
SqlServer数据类型、C#SqlDbType对应关系及转换
使用PowerDesigner进行代码生成
string常用操作
.net下开源轻量级ORM框架Dapper扩展系列1
datetime2 (Transact
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服