我的MyGeneration
2024-10-20 05:41:20
话不多说,直接上代码
Interface Code:
public class GeneratedGui : DotNetScriptGui
{
public GeneratedGui(ZeusContext context) : base(context) {} //-----------------------------------------
// The User Interface Entry Point
//-----------------------------------------
public override void Setup()
{
// ** UNCOMMENT CODE BELOW TO SEE UI ** ui.Width = ;
ui.Height = ;
GuiLabel lblDemo = ui.AddLabel("lblDemo", "Demo", "Demo Tooltip");
GuiComboBox cbDb = ui.AddComboBox("cbDb","select the Database");
cbDb.BindData(MyMeta.Databases);
ui.ShowGui = true;
} }
Template Code:
<%
public class GeneratedTemplate : DotNetScriptTemplate
{
public GeneratedTemplate(ZeusContext context) : base(context) {} //---------------------------------------------------
// Render() is where you want to write your logic
//---------------------------------------------------
public override void Render()
{
IDatabase db = MyMeta.Databases[input["cbDb"].ToString()];
foreach(ITable tb in db.Tables)
{
OutModel(tb);
}
} public string Dtype(string dbType)
{
string dt = "";
switch(dbType)
{
case "int":
dt = "int";
break;
case "decimal":
dt = "decimal";
break;
case "datetime":
dt = "DateTime";
break;
case "float":
dt = "decimal";
break;
default:
dt = "string";
break;
} return dt;
} public void OutModel(ITable tb)
{
output.clear();
output.writeln("using System;");
output.writeln("using System.Collections.Generic;");
output.writeln("using System.Linq;");
output.writeln("using System.Text;");
output.writeln("");
output.writeln("namespace Models.Entity");
output.writeln("{");
output.writeln(" public class " + tb.Name);
output.writeln(" {");
output.writeln(" public " + tb.Name + "()");
output.writeln(" {");
output.writeln(" ");
output.writeln(" }");
output.writeln(""); foreach(IColumn c in tb.Columns)
{
output.writeln(" private " + Dtype(c.DataTypeName) + " _" + c.Name + ";");
output.writeln("");
output.writeln(" /// <summary>");
output.writeln(" /// " + c.Description + "(" + c.DataTypeName + ")");
output.writeln(" /// </summary>");
output.writeln(" public " + Dtype(c.DataTypeName) + " " + c.Name);
output.writeln(" {");
output.writeln(" get { return _" + c.Name + "; }");
output.writeln(" get { _" + c.Name + " = value; }");
output.writeln(" }");
output.writeln("");
} output.writeln(" }");
output.writeln("}");
output.save("D:\\testModel\\"+tb.Name+".cs","o");
}
}
%>
最新文章
- BZOJ3669 (动态树)
- javax/javaee-api/ Maven依赖
- Mongodb的Samus驱动
- LeetCode ";Design Tic-Tac-Toe";
- jquery中attr和prop的区别(转)
- 替换SearchBar 键盘上的 搜索 按钮
- AES对称加密算法原理(转载)
- php类的实现
- 启动Tomcat出现Using CATALINA_BASE
- Windows服务安装方法
- UVAlive 3263 That Nice Euler Circuit(欧拉定理)
- vim插件和配置
- 不可小觑的Web开发编码规范
- C#调用WebService服务(动态调用)
- 使用Eclipse Memory Analyzer Tool(MAT)分析线上故障(一) - 视图&;功能篇
- Liunx小白须知
- elasticsearch系列八:ES 集群管理(集群规划、集群搭建、集群管理)
- 「NOI2014」购票 解题报告
- POI SXSSFWorkbook 读取模板 存在公式解决
- poj3080kmp或者暴力