ITXP365(智码IT网)

分享电脑知识,传播IT技巧

致敬爱学习的您,祝您访问愉快!

orm框架SqlSugar入门6 CodeFirst基础 InitTables()的常见用法


发布:智码IT网   阅读:
InitTables()方法的作用是根据model实体类创建数据库表。

我们先创建SqlSugarClient类的示例对象db,代码如下: 
SqlSugarClient db=new SqlSugarClient(MyConnConfig.connectionConfig2);

1、创建数据库单表
假设现有Models.Student实体类,以下示例代码将根据Models.Student实体类,创建数据库表Student
db.CodeFirst.InitTables(typeof(Models.Student));

2、根据多个model实体类,创建多张数据库表
假设现有Models.Student和Models.Course两个实体类,以下示例代码将根据这两个实体类,创建数据库表Student和Course
db.CodeFirst.InitTables(typeof(Models.Student), typeof(Models.Course));

3、设置数据库字段的默认varchar长度
如果不设置,则model实体类中默认string类型成员对应生成的varchar类型数据库字段的默认长度为255,以下示例代码可将其设置为201:
db.CodeFirst.SetStringDefaultLength(201).InitTables(typeof(Models.Student));

4、从包含model实体类的dll文件批量创建数据库表
建设我们有Course、Inpours、Student、StudentScores四个model实体类,这些类包含在model的程序集里面,我们可以得到一个叫model1.dll的程序集文件,将其放在测试项目的bin\Debug下。以下示例代码演示根据model1.dll文件的model实体类,批量创建数据库表。

var modelDllPath = Application.StartupPath+"\\model1.dll";
Type[] modelTypes = Assembly.LoadFile(modelDllPath).GetTypes();   //需要 using System.Reflection;
db.CodeFirst.InitTables(modelTypes);

5、自定义生成的表名
以下示例代码创建Models.Student实体类对应的表,表名称设置为MyStudent
db.CodeFirst.As<Models.Student>("MyStudent").InitTables(typeof(Models.Student));

上一篇:没有了
下一篇:没有了

© 2001-智码IT网 www.itxp365.com版权所有

蜀ICP备2021001527号