代码生成器

一.界面设计

二.具体代码

using System;
using System.Collections.Generic;
using
System.ComponentModel;
using System.Configuration;
using
System.Data;
using System.Data.SqlClient;
using System.Drawing;

using System.Linq;
using System.Text;
using
System.Threading.Tasks;
using System.Windows.Forms;

namespace 代码生成器1
{
    public partial class Form1
: Form
    {

        public Form1()

        {

           
InitializeComponent();
        }

private void btnLink_Click(object
sender, EventArgs e)
        {

            string
sql = "select * from INFORMATION_SCHEMA.TABLES";

            DataTable
dt = ExecuteDatatable(sql);

            foreach
(DataRow row in dt.Rows)

            {

               
string tableName = (string)row["TABLE_NAME"];

               
clbDatabase.Items.Add(tableName);
 

            }

          

        }

        private static string constr =
ConfigurationManager.ConnectionStrings["dbconstr"].ConnectionString;

        #region 数据库链接

        private DataTable
ExecuteDatatable(string sql, params SqlParameter[] parameters)

        {

            using
(SqlConnection conn = new SqlConnection(constr))

            {

               
conn.Open();

               
using (SqlCommand cmd = conn.CreateCommand())

               
{

                   
cmd.CommandText = sql;

                   
cmd.Parameters.AddRange(parameters);

                   
SqlDataAdapter adapter = new SqlDataAdapter(cmd);

                   
DataSet dataset = new DataSet();

                   
adapter.Fill(dataset);

                   
return dataset.Tables[0];

               
}
            }

        }

        #endregion

        #region 代码生成

        private void
btnGenerate_Click(object sender, EventArgs e)

        {

            string
sql = "select * from INFORMATION_SCHEMA.COLUMNS where [email protected]";

            foreach
(string tablename in clbDatabase.CheckedItems)

            {

               
DataTable dt = ExecuteDatatable(sql,

                    
new SqlParameter("@tabel", tablename));

               
//MessageBox.Show(dt.TableName.ToString());

               
StringBuilder sb = new StringBuilder();

               
sb.AppendLine("Class " + tablename);

               
sb.AppendLine("{");

foreach (DataRow row in dt.Rows)

               
{

                   
string dataType = ToVSType((string)row["DATA_TYPE"]);

                   
string dataName = (string)row["COLUMN_NAME"];

                   
sb.AppendLine("public " + dataType + " " + dataName + " {get;set;}");

               
}

               
sb.AppendLine("}");

               
MessageBox.Show(sb.ToString());

}

}

        #endregion

        //数据库数据类型向VS转换

        private string ToVSType(string
dataType)
        {

            switch
(dataType)

            {

               
case "int":

                   
return "int";

                   
//break;

               
case "nchar":

               
case "text":

                   
return "string";

                   
//break;

               
case "bit":

                   
return "bool";

                   
//break;

               
case "DateTime":

                   
return "datetime";

                   
//break;

               
default :

                   
return "object";

}

        }

}
}

代码生成器,码迷,mamicode.com

时间: 2024-12-21 20:47:14

代码生成器的相关文章

java SSM框架 多数据源 代码生成器 websocket即时通讯 shiro redis 后台框架源码

获取[下载地址]   QQ: 313596790官网 http://www.fhadmin.org/A 调用摄像头拍照,自定义裁剪编辑头像,头像图片色度调节B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都

java 企业网站源码 后台 springmvc SSM 前台 静态化 代码生成器

java 企业网站源码 前后台都有 静态模版引擎, 代码生成器大大提高开发效率 点击:获取地址 QQ 313596790 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以访问速度快,轻便,对服务器负担小 3.网站前端采用主流的相应式布局,支持PC.平板.手机浏览器访问 4.springmvc +spring4.2.5+ mybaits3.3  SSM 普通java web(非maven) 

动软代码生成器 可用于生成Entity层,可更改模板 /codesmith 也可以

动软代码生成器官方下载地址:http://www.maticsoft.com/download.aspx 教程:http://jingyan.baidu.com/article/219f4bf7dfda86de442d380b.html codesmith  用法实例:http://www.cnblogs.com/huangcong/archive/2010/06/14/1758201.html

论动软代码生成器的好与坏

曾几何时,动软代码生成器是一种非常方便的工具,很多从事C#语言的开发人员都用过这个工具,当然也包括楼主本人. 以往的开发模式都是围绕数据库为中心展开的,先设计好数据库,然后再编写代码.动软代码生成器就是在这样的背景下诞生的. 你只要设计好数据库模式,然后用动软代码生成器一键生成数据访问层代码,非常方便.(虽然动软有业务层,但我认为那是鸡肋,只不过是数据访问层的一层简单包装,没有实际意义) 这对不想手动编写枯燥乏味的数据库操作的开发人员来说,非常有吸引力. 下面楼主凭借自己的经验,从好与坏两个方面

代码生成器源码

xmal文件 <Window x:Class="MyCode.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="代码生成器" Height="650" Width="

java代码编辑器 pdf文件预览 主流SSM 代码生成器 shrio redis websocket即时通讯

A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码 B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块 C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势 D 集成安全权限框架shiro   Shiro 是一个用 Jav

集成代码生成器 单表 多表 树形表 一对多 springmvc spring mybatis SSM 后台框架

获取[下载地址]   QQ: 313596790   [免费支持更新] 三大数据库 mysql  oracle  sqlsever   更专业.更强悍.适合不同用户群体 [新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统] A 集成代码生成器 [正反双向(单表.主表.明细表.树形表,开发利器)+快速构建表单; QQ:313596790 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块 B 集成阿里巴巴数据库连

SpringMVC mybatis 多数据源 代码生成器 SSM java redis shiro ehcache

获取[下载地址]   QQ: 313596790官网 http://www.fhadmin.org/A 调用摄像头拍照,自定义裁剪编辑头像,头像图片色度调节B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都

java SSM 框架 多数据源 代码生成器 websocket即时通讯 shiro redis 后台框架源码

A 调用摄像头拍照,自定义裁剪编辑头像 [新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统]B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,开发利器)+快速构建表单;  技术:313596790 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid; 获取[下载地址]      数据库连接池  阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面

【集成代码生成器】 单表 多表 树形表 一对多

获取[下载地址]     [免费支持更新]三大数据库 mysql  oracle  sqlsever   更专业.更强悍.适合不同用户群体[新录针对本系统的视频教程,手把手教开发一个模块,快速掌握本系统] A 集成代码生成器 [正反双向(单表.主表.明细表.树形表,开发利器)+快速构建表单; freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块B 集成阿里巴巴数据库连接池druid;  数据库连接池  阿里巴巴的 druid.