资源简介
C#三层架构代码生成器【完美缩进】【优化版】
之前上传了一个代码生成器,没想到下载量还挺大的,所以这次做了一些小优化,主要是给代码加了更多注释,并进行了一定的整理,界面也做了些调整,另外附上了DAL层代码中用到类SqlHelper,让大家使用或阅读起来更方便~
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.IO;
namespace CodeGenerator
{
///
/// 代码生成器类
///
class Generator
{
#region 定义
///
/// 查询指定表的所有列信息SQL语句
///
private readonly static string SELECT_COLS_BY_TABLE = “select * from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME=@tableName“;
#endregion
#region 公开方法
///
/// 执行SQL语句返回DataTable
///
///
///
///
///
public static DataTable ExecuteDataTable(string connStr string sqlStr params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sqlStr;
cmd.Parameters.AddRange(parameters);
using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
{
DataTable dt = new DataTable();
adapter.Fill(dt);
return dt;
}
}
}
}
///
/// 生成指定数据库表对应的Model代码
///
/// 数据库表名
///
public static void GenerateModel(string tableName GeneratorArgs args)
{
// 获取指定表的所有字段信息
DataTable dtCols = ExecuteDataTable(args.ConnStr SELECT_COLS_BY_TABLE new SqlParameter(“tableName“ tableName));
// 用于保存需要生成的代码
StringBuilder sb = new StringBuilder();
#region 生成类文件头部内容
sb.AppendLine(“using System;“);
sb.AppendLine(“using System.Collections.Generic;“);
sb.AppendLine(“using System.Linq;“);
sb.AppendLine(“using System.Text;“ + “\r\n“);
sb.AppendLine(“namespace “ + args.Namespace + “.Model“);
sb.AppendLine(“{“);
sb.AppendLine(“\t“ + “public partial class “ + tableName);
sb.AppendLine(“\t“ + “{“);
#endregion
#region 生成Model中的各属性
foreach (DataRow row in dtCols.Rows)
{
string colName = Convert.ToString(row[“Column_Name“]);
string dataType = Convert.ToString(row[“Data_Type“]);
// 获取数据类型
Type dotnetType = GetTypeByDBType(dataType);
#region 处理可空类型
string dotnetTypeName;
if (dotnetType.IsValueType)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-08-08 13:46 CodeGenerator【代码优化版】\
目录 0 2013-08-08 13:46 CodeGenerator【代码优化版】\CodeGenerator\
目录 0 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\
文件 929 2013-03-12 11:45 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator.sln
文件 22528 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator.suo
目录 0 2013-08-08 11:41 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\bin\
目录 0 2013-08-08 12:47 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\bin\Debug\
文件 24064 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\bin\Debug\CodeGenerator.exe
文件 38400 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\bin\Debug\CodeGenerator.pdb
文件 14328 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\bin\Debug\CodeGenerator.vshost.exe
文件 3836 2013-08-08 12:41 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\CodeGenerator.csproj
文件 168 2013-08-08 12:41 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\CodeGenerator.csproj.user
文件 17034 2013-08-08 13:09 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\Generator.cs
文件 817 2013-08-08 11:54 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\GeneratorArgs.cs
文件 3537 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\MainForm.cs
文件 12759 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\MainForm.Designer.cs
文件 6016 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\MainForm.resx
目录 0 2013-03-12 11:45 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\
目录 0 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\
文件 1907 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\CodeGenerator.csproj.FileListAbsolute.txt
文件 850 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\CodeGenerator.csproj.GenerateResource.Cache
文件 24064 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\CodeGenerator.exe
文件 180 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\CodeGenerator.MainForm.resources
文件 38400 2013-08-08 13:33 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\CodeGenerator.pdb
文件 180 2013-08-08 12:41 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\CodeGenerator.Properties.Resources.resources
目录 0 2013-03-12 11:45 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\Refactor\
目录 0 2013-03-12 11:45 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\obj\Debug\TempPE\
文件 497 2013-03-12 11:45 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\Program.cs
目录 0 2013-03-12 11:45 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\Properties\
文件 1382 2013-03-12 11:45 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\Properties\AssemblyInfo.cs
文件 2876 2013-03-12 11:45 CodeGenerator【代码优化版】\CodeGenerator\CodeGenerator\Properties\Resources.Designer.cs
............此处省略5个文件信息
- 上一篇:C#读写内存
- 下一篇:使用C#Hook实现的屏幕放大镜
相关资源
- delta机器人运动学算法正向逆向求解
- C#三层酒店管理系统(完整源码,可根
- C#编写的一个电影购票系统
- 身份证号码识别工具
- c#服装店销售管理源码系统无限制全功
- C#贪吃蛇小游戏278387
- 基于ASP.NET网上服装销售系统源码
- C#串口通信及数据表格存储
- 基于C#开发的企业工资管理系统
- Unity5.0切水果游戏C#
- C#斗地主源代码
- C#并口开发
- C#21点游戏windows窗体应用
- C#项目开发案例全程实录源代码
- C#本质论 原书第4版 最新版 高清扫描
- “三打一”扑克牌游戏设计
- 蚂蚁爬杆+图形界面+C#+ide=vs08
- C#远程控制软件TwoCare完美无错源代码
- 海康sdkC#封装及调用
- 华视CVR100开发SDK说明+C#案例.rar
- 类似如鲁大师一样的一款系统优化的
- c# 生成 bt种子 文件 bt 源码
- ASP.NET网上购物商城系统(源码)
- c# 棋牌游戏源码c# 棋牌游戏源码
- 基于c#.net平台的21点游戏
- dwg文件预览
- C#网站C#网站C#网站C#网站C#网站C#网站
- C#语音朗读DLL测试源码[成熟代码可直
- 网上选课系统 网页版 C# 开发 asp.net
- 俄罗斯方块外挂代码C#
评论
共有 条评论