用ToUpperCase()方法会自动删除下划线,比如 mytable_Id会变成 MyTableId,所以首字大写要自己写方法的:
<%@ CodeTemplate
Language="C#"
TargetLanguage="C#"
ResponseEncoding="UTF-8"
Src=""
Inherits=""
Debug="False"
Description="Create C# Entity"
%>
<%@ Property Name="table" Type="SchemaExplorer.TableSchema" Optional="True" Category="Context" %>
<%@ Property Name="NameSpace" Type="System.String" Optional="False" Category="" Default="TY.Entity.DbTable" %>
<%@ Property Name="ClassName" Type="System.String" Optional="False" Category="" %>
<%@ Assembly Name="SchemaExplorer" %>
<%@ Import Namespace="SchemaExplorer" %>
<%
//声明关键字段 : Primary Key 字段
string idKey = table.PrimaryKey.MemberColumns[0].Name;
%>
<script runat="template">
private string OneToUpper(string str)
{
return str.Substring(0,1).ToUpper()+str.Substring(1);
}
</script>
using System;
using System.Collections.Generic;
using System.Text;
namespace <%= NameSpace %>
{
[EntityAttribute(TableName="<%= OneToUpper(table.Name) %>", PrimaryKeyName="<%= OneToUpper(idKey) %>")]
public class <%= ClassName %>
{
<%foreach(ColumnSchema col in table.Columns){ %>
public string <%= OneToUpper(col.Name) %> ;
<%}%>
}
}