SqlSugar/Src/Asp.NetCore2/SqliteTest/Demo/DemoE_CodeFirst.cs

57 lines
2.1 KiB
C#
Raw Normal View History

2019-06-04 21:09:53 +08:00
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace OrmTest
{
public class DemoE_CodeFirst
{
public static void Init()
{
Console.WriteLine("");
Console.WriteLine("#### CodeFirst Start ####");
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
{
DbType = DbType.Sqlite,
ConnectionString = Config.ConnectionString3,
InitKeyType = InitKeyType.Attribute,
2023-09-28 16:11:56 +08:00
IsAutoCloseConnection = true
2019-06-04 21:09:53 +08:00
});
db.DbMaintenance.CreateDatabase();
db.CodeFirst.InitTables(typeof(CodeFirstTable1));//Create CodeFirstTable1
db.Insertable(new CodeFirstTable1() { Name = "a", Text="a" }).ExecuteCommand();
var list = db.Queryable<CodeFirstTable1>().ToList();
2023-09-28 16:11:56 +08:00
db = NewUnitTest.Db;
db.CurrentConnectionConfig.MoreSettings = new ConnMoreSettings()
{
SqliteCodeFirstEnableDefaultValue = true,
2023-09-28 16:40:13 +08:00
SqliteCodeFirstEnableDescription=true
2023-09-28 16:11:56 +08:00
};
2023-09-28 16:25:11 +08:00
db.CodeFirst.InitTables<CodeFirstUnitafa12>();
var xxx=db.DbMaintenance.GetColumnInfosByTableName("CodeFirstUnitafa12", false);
2019-06-04 21:09:53 +08:00
Console.WriteLine("#### CodeFirst end ####");
}
}
2023-09-28 16:25:11 +08:00
public class CodeFirstUnitafa12
2023-09-28 16:11:56 +08:00
{
2023-09-28 16:40:13 +08:00
[SugarColumn(IsPrimaryKey =true,IsIdentity =true,ColumnDescription ="aa")]
2023-09-28 16:25:11 +08:00
public int Id { get; set; }
2023-09-28 16:11:56 +08:00
[SugarColumn(DefaultValue = "(strftime('%Y-%m-%d %H:%M:%S', 'now', 'localtime'))")]
public DateTime Name { get; set; }
[SugarColumn(DefaultValue = "1")]
public string Name2 { get; set; }
}
2019-06-04 21:09:53 +08:00
public class CodeFirstTable1
{
[SugarColumn(IsIdentity = true, IsPrimaryKey = true)]
public int Id { get; set; }
public string Name { get; set; }
[SugarColumn(ColumnDataType = "Nvarchar(255)")]//custom
public string Text { get; set; }
[SugarColumn(IsNullable = true)]
public DateTime CreateTime { get; set; }
}
}