c mysql实体类生成工具_【干货分享】C# 实体类生成工具
前言:
項目實戰中不論是業務編碼還是通用編碼,總會歸納出一些通用的工具類。放入項目中一勞永逸,讓兄弟姐妹們避免編寫重復代碼。所以利用了工作之余的時間,將這些散落在多個項目中精致優雅的工具類,歸納起來形成工程,方便后續工作的使用和便捷開發。
根據實際需求,編寫了此工具。目前只支持SQLServer數據庫,不過我自己有時間也會完成其他數據庫支持的,有興趣的讀者可以繼續擴展支持其他數據庫。
功能:
1、能自動獲得用戶數據庫中的所有數據表;
2、能根據用戶所選的數據表,自動生成實體類;
3、能自動產生 C# 實體類的(*.cs)代碼文件;
實體工具:
一、界面截圖:
二、SQL語句部分代碼
----1. 獲取所有的數據庫名-----
SELECT NAME FROM MASTER.DBO.SYSDATABASES ORDER BY NAME
-----2. 獲取所有的表名------
SELECT NAME FROM SYSOBJECTS WHERE XTYPE='U' ORDER BY NAME
--XTYPE='U':表示所有用戶表;
--XTYPE='S':表示所有系統表;
SELECT NAME FROM SYSOBJECTS WHERE TYPE = 'U' AND SYSSTAT = ''
----注意:一般情況只需要TYPE = 'U',但有時候會有系統表混在其中(不知道什么原因),加上后面一句后就能刪除這些系統表了。
三、C#部分代碼
///
/// 獲取所有數據庫
///
///
///
public static List GetAllDataBaseName(string connection)
{
List dic = new List();
string ConnString = "select name from Master.sys.SysDatabases order by name";
SqlConnection connect = new SqlConnection(connection);
SqlCommand cmd = new SqlCommand(ConnString, connect);
try
{
if (connect.State == ConnectionState.Closed)
{
connect.Open();
IDataReader dr = cmd.ExecuteReader();
dic.Clear();
while (dr.Read())
{
dic.Add(new DbTable { value = dr["name"].ToString(), key = dr["name"].ToString() });
}
dr.Close();
}
}
catch (Exception ex)
{
throw new AggregateException("獲得數據庫地址錯誤,你想上天嗎?");
}
finally
{
if (connect != null && connect.State == ConnectionState.Open)
{
connect.Dispose();
}
}
return dic;
}
///
/// 寫文件
///
/// 文件完整路徑
/// 內容
private static void WriteAndSave(string fileName, string content)
{
//實例化一個文件流--->與寫入文件相關聯
using (var fs = new FileStream(fileName, FileMode.Create, FileAccess.Write))
{
//實例化一個StreamWriter-->與fs相關聯
using (var sw = new StreamWriter(fs))
{
//開始寫入
sw.Write(content);
//清空緩沖區
sw.Flush();
//關閉流
sw.Close();
fs.Close();
}
}
}
工具下載:
總結:
1.避免編寫重復代碼,編寫此工具生成實體類快速開發。
2.這類工具在網上已有不少,但是自己可以歸納起來形成工程,放入項目中,不僅自己從中可以學到新的知識也同時提升了自己的總結歸納能力。
3.此工具還未完善,只支持SQLServer數據庫,不過我自己有時間也會完成其他數據庫支持的,有興趣的讀者可以繼續擴展支持其他數據庫。
4.如果有不對的或不理解的地方,希望大家可以多多指正,提出問題,才能站在更多用戶角度,編寫了出更便捷實用的工具。
c# 實體類生成工具
一個簡單生成c#實體類的工具 源代碼下載
C#實體類生成工具(onlymodel)
最近剛從常用數據庫Mysql轉到SqlServer,深陷于沒有實體生成工具的痛苦,嘗試過動軟,但生成的字段類型和數據庫的有些不對應.以及網上的一些實體生成工具,但要么操作太過繁瑣,要么效果不如人意,所 ...
ORM存儲過程和實體類代碼生成工具
ORM存儲過程和實體類生成工具 自己寫的一個ORM框架的存儲過程和實體類生成工具,具體界面如下: 操作步驟: 1.設置數據庫連接: 2.選擇要生成的表或視圖: 3.選擇要生成的存儲過程類型: 4.如果 ...
C# T4 模板 數據庫實體類生成模板(帶注釋,娛樂用)
說明:..,有些工具生成實體類沒注釋,不能和SqlServer的MS_Description屬性一起使用,然后照著網上的資源,隨便寫了個生成模板,自娛自樂向,其實卵用都沒有參考教程????1.htt ...
[開源] FreeSql.AdminLTE.Tools 根據實體類生成后臺管理代碼
前言 FreeSql 發布至今已經有9個月,功能漸漸完善,自身的生態也逐步形成,早在幾個月前寫過一篇文章,您可以 ...
EF:根據實體類生成表結構SQL
根據實體類生成表結構SQL: PM> Enable-Migrations -ProjectName Domain -StartUpProjectName Handler -Force PM> ...
C#實體類生成XML與XML Schema文檔
一.實體類生成XML private void CreateXML() { Type[] objType = DBEntityRegst(); foreach (var item in objType ...
無線網絡實體圖生成工具airgraph-ng
無線網絡實體圖生成工具airgraph-ng ? airgraph-ng是aircrack-ng套件提供的一個圖表生成工具.該工具可以根據airodump工具生成的CSV文件繪制PNG格式的圖.繪制的 ...
隨機推薦
thinkphp3.2跨控制器調用其他模塊的方法
thinphp中前臺后臺都有互相調用方法,這樣可以省去重復內容. 1 2 $hello?=?new?\Admin\Common\Fun\hello(); $hello->hehe(); 調用其他 ...
Selenium_Selenium WebDriver 中鼠標和鍵盤事件分析及擴展
在使用?Selenium?WebDriver 做自動化測試的時候,會經常模擬鼠標和鍵盤的一些行為.比如使用鼠標單擊.雙擊.右擊.拖拽等動作:或者鍵盤輸入.快捷鍵使用.組合鍵使用等模擬鍵盤的操作.在 W ...
【轉】 linux下的g++編譯器安裝
再debian下直接apt-get install gcc g++就可以了.按照類似的邏輯,再Fedora下yum install gcc g++ 報告無法找到g++包. 查了一下,原來這個包的名字叫 ...
怎么查看windows2003中隱藏用戶
在命令模式下刪除1.你在MS-dos下先輸入net user 看有那些用戶, 注意第一步看不出隱藏的用戶 2.然后在輸入net localgroup administrators 或者 net loc ...
轉:隨機函數 C++中rand()函數的用法
轉自:http://blog.163.com/wujiaxing009@126/blog/static/719883992011113011359154/ 一.C++中不能使用random()函數 ? ...
Dropping tests(01分數規劃)
Dropping tests Time Limit:?1000MS ? Memory Limit:?65536K Total Submissions:?8176 ? Accepted:?2862 De ...
oracle ebs應用產品安全性-數據訪問權限集
定義 數據訪問權限集是一個重要的.必須設定的系統配置文件選項.對具有相同科目表.日歷和期間類型的分類帳及其所有平衡段值或管理段值的定義讀寫權限,系統管理員將其分配至不同的責任以控制不同的責任對分類帳數 ...
*args **kwargs
-----------耐得住寂寞,守得住芳華. # # -------------------------------[day10作業及默寫]----------------------------- ...
Windows 7 64bit VS2015 配置CUDA
1. 更新驅動 下載系統顯卡驅動,首先在設備管理器中查看自己的顯卡型號,我的是GeForce GTX 960,然后在官網下載對應的驅動程序并安裝. 官網網址:NVIDIA 驅動程序下載 ? 2. 安裝 ...
thinkphp 5.1 同時選中多個文件上傳
...總結
以上是生活随笔為你收集整理的c mysql实体类生成工具_【干货分享】C# 实体类生成工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: resin php mysql_Redh
- 下一篇: linux cmake编译源码,linu