SqlSugar/Src/Asp.Net/PgSqlTest/Demo/DemoE_CodeFirst.cs

95 lines
3.6 KiB
C#
Raw Normal View History

2019-05-26 19:35:57 +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.PostgreSQL,
2019-06-04 15:23:17 +08:00
ConnectionString = Config.ConnectionString3,
2019-05-26 19:35:57 +08:00
InitKeyType = InitKeyType.Attribute,
IsAutoCloseConnection = true
});
2019-06-04 15:23:17 +08:00
db.DbMaintenance.CreateDatabase();
2019-05-26 19:35:57 +08:00
db.CodeFirst.InitTables(typeof(CodeFirstTable1));//Create CodeFirstTable1
db.Insertable(new CodeFirstTable1() { Name = "a", Text="a" }).ExecuteCommand();
var list = db.Queryable<CodeFirstTable1>().ToList();
2022-11-08 13:29:07 +08:00
db.CodeFirst.InitTables<CodeFirstArrary>();
db.Insertable(new CodeFirstArrary()
{
RoleIds=new long[] { 1,2}
}).ExecuteCommand();
var list2=db.Queryable<CodeFirstArrary>().Select(it =>
2022-11-08 19:34:15 +08:00
it.RoleIds ).First();
var list3= db.Queryable<CodeFirstArrary>().Select(it =>
it.RoleIds).FirstAsync().GetAwaiter().GetResult();
2022-11-14 00:30:28 +08:00
db.CodeFirst.InitTables<CodeFirstByte>();
db.Insertable(new CodeFirstByte() { array = new byte[] { 1, 2, 4, 5 } }).ExecuteCommand();
var list4=db.Queryable<CodeFirstByte>().ToList();
2022-11-15 22:30:07 +08:00
db.CodeFirst.InitTables<CodeFirstEnum>();
db.DbMaintenance.TruncateTable<CodeFirstEnum>();
db.Storageable(new CodeFirstEnum() { dbType = DbType.Access, Name = "a" }).ExecuteCommand();
2022-11-17 16:30:53 +08:00
db.CodeFirst.InitTables<CodeFirstArray>();
db.Insertable(new List<CodeFirstArray>() {
new CodeFirstArray() { floats = new float[] { 1 } },
new CodeFirstArray() { floats = new float[] { 1 } }
}).ExecuteCommand();
var list5=db.Queryable<CodeFirstArray>().ToList();
2022-12-06 09:51:55 +08:00
db.CodeFirst.InitTables<CodeFirstArraryBigInt>();
db.Updateable<CodeFirstArraryBigInt>()
.SetColumns(it => it.longs == new long[] { 1, 2 })
.Where(it=>it.id==1)
.ExecuteCommand();
2019-05-26 19:35:57 +08:00
Console.WriteLine("#### CodeFirst end ####");
}
}
2022-12-06 09:51:55 +08:00
public class CodeFirstArraryBigInt
{
[SugarColumn(IsPrimaryKey =true)]
public int id { get; set; }
[SugarColumn(IsArray =true,ColumnDataType ="int8 []")]
public long[] longs { get; set; }
}
2022-11-17 16:30:53 +08:00
public class CodeFirstArray
{
[SugarColumn(IsArray =true,ColumnDataType = "real[]")]
public float[] floats { get; set; }
}
2022-11-15 22:30:07 +08:00
public class CodeFirstEnum
{
[SugarColumn(IsPrimaryKey =true)]
public DbType dbType { get; set; }
public string Name { get; set; }
}
2022-11-14 00:30:28 +08:00
public class CodeFirstByte
{
public byte[] array { get; set; }
}
2022-11-08 13:29:07 +08:00
public class CodeFirstArrary
{
[SugarColumn(ColumnDescription = "绑定的角色ids", ColumnDataType = "int8[]", IsArray = true)]
public long[] RoleIds { get; set; }
}
2022-11-14 20:00:43 +08:00
[SugarIndex("{table}idindex",nameof(Id),OrderByType.Asc)]
2019-05-26 19:35:57 +08:00
public class CodeFirstTable1
{
[SugarColumn(IsIdentity = true, IsPrimaryKey = true)]
public int Id { get; set; }
public string Name { get; set; }
2019-06-04 15:23:17 +08:00
[SugarColumn(ColumnDataType = "varchar(255)")]//custom
2019-05-26 19:35:57 +08:00
public string Text { get; set; }
[SugarColumn(IsNullable = true)]
public DateTime CreateTime { get; set; }
}
}