sqlsugar使用
sqlsugar生成cs文件
實施
以下 是連接字符串:
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = Config.ConnectionString,
DbType = DbType.SqlServer,
InitKeyType = InitKeyType.SystemTable //初始化主鍵和自增列信息到ORM的方式
});
支持多種數據庫
生成實體
注意:使用DbFirst數據庫賬戶要有系統表的權限,否則無法讀取表的結構
1.將庫裏面所有表都生成實體類文件
db.DbFirst.CreateClassFile("c:\\Demo\\1",命名空間);
2.指定名錶生成 ,可以傳數組
db.DbFirst.Where("Student").CreateClassFile("c:\\Demo\\2",命名空間);
3.根據表達式篩選
db.DbFirst.Where(it=>it.ToLower().StartsWith("view")).CreateClassFile("c:\\Demo\\3");
4.生成實體支持別名表和別名列(技巧:db.DbMaintenance.GetTableInfoList 可以拿到所有的表名可以批量循環操作)
db.MappingTables.Add("ClassStudent", "Student");
db.MappingColumns.Add("NewId", "Id", "ClassStudent");
db.DbFirst.IsCreateAttribute().Where("Student").CreateClassFile("c:\\Demo\\3");
5.生成實體類,並且給有數據庫默認值的屬性賦值
db.DbFirst.IsCreateDefaultValue().CreateClassFile("c:\\Demo\\4", "Demo.Models");
6.生成實體帶屬性
db.DbFirst.IsCreateAttribute().CreateClassFile("c:\\Demo\\5");
7.可以重定義生成實體的模版,把old的值通過斷點複製一下,然後進行修改
db.DbFirst.
SettingClassTemplate(old =>
{
return old;
})
.SettingNamespaceTemplate(old =>
{
return old;//修改using命名空間
})
.SettingPropertyDescriptionTemplate(old =>
{
return @" /// <summary>
/// Desc_New:{PropertyDescription}
/// Default_New:{DefaultValue}
/// Nullable_New:{IsNullable}
/// </summary>";
})
.SettingPropertyTemplate(old =>
{
return old;
})
.SettingConstructorTemplate(old =>
{
return old;//修改構造函數
})
.CreateClassFile("c:\\Demo\\6");
執行完成後就可以在目錄下面,找到生成的cs文件。