0
点赞
收藏
分享

微信扫一扫

C# 实体类生成工具

他说Python 2022-03-31 阅读 63


我知道:这类工具在网上已有不少。但下载后一试用,很是不爽!

               要么过于庞大,使用起来比较复杂,似乎杀鸡焉用牛刀;

               要么太过简单,使用起来难以满足我的需求。


而此工具要做到既小巧,又实用,可谓之“众里寻他千百度,摆渡百度无觅处” ^_^


No way out, do it yourself !  so,  有了下文 。。。


根据实际需求,站在用户角度,编写了此工具。

本人之此工具,不可谓之很有技术含量,但一定小巧实用;

本人之此工具,不可谓之多么强大完美,但一定体贴入微;


实现功能:

1、能自动获得用户数据库中的所有数据表;

2、能根据用户所选的数据表,自动生成实体类;

3、能根据用户的需求和选择,动态生成构造函数;

4、文本显示实现了关键字彩色区分;

5、能一键复制到剪切板中,供用户拷贝;

6、能自动产生 C# 实体类的(*.cs)代码文件;


界面截图:

 C# 实体类生成工具_DotNet


SQL语句参考代码:

C# 实体类生成工具_项目_02C# 实体类生成工具_c#_03SQL代码 use master

go


-- 查看 DBMS 中所有对象

select * from sysobjects


-- 查看 DBMS 中所有数据库

select * from sysdatabases


------------------------------------------------------

use yourDataBase

go


-- 查看"yourDataBase"数据库中所有的表

select * from yourDataBase.information_schema.tables


-- 查看"yourDataBase"数据库中所有的字段

select * from yourDataBase.information_schema.columns 


-- 查看"yourDataBase"数据库中,"yourTable"表的相关字段的属性

select column_name,data_type --数据类型

  from yourDataBase.information_schema.columns 

  where table_name='yourTable'


select column_name,is_nullable --是否为空

  from yourDataBase.information_schema.columns 

  where table_name='yourTable'


C#语句参考代码:

C# 实体类生成工具_项目_02C# 实体类生成工具_c#_03C#代码

// 1 提供将数据置于系统剪贴板中以及从中检索数据的方法。

Clipboard.SetDataObject(richTextBox1.Text);


// 2 让浏览器打开超链接地址

private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)

{

    System.Diagnostics.Process.Start(e.LinkText);

    // 或 System.Diagnostics.Process.Start("IExplore.exe", e.LinkText);

}


// 3 改变关键字的颜色

private void changeColor(string keyword) // keyword 关键字

{

    int n_bool = 0;

    int start = 0;

    while (n_bool != -1)

    {

        n_bool = txtEntityClass.Find(keyword, start,

                          RichTextBoxFinds.WholeWord | RichTextBoxFinds.MatchCase);

        start = (n_bool == 1) ? start + keyword.Length : start + 1;

        txtEntityClass.SelectionColor = Color.Blue;

    }

}


// 4 可以考虑将 RichTextBox 控件替换为 WebBrowser 控件;


实体类生成工具[下载]


补记:

1. 对数据库中少用的数据类型,在C#语言中补充了相关类型的映射;

2. 修复了C#生成字段的顺序没按照数据库表中字段的顺序的BUG;

    感谢“永远的阿哲”所提供的反馈!

举报

相关推荐

0 条评论