using FreeSql.DataAnnotations; using Xunit; namespace FreeSql.Tests.DataAnnotations { public class FluentTest { [Fact] public void Fluent() { g.mysql.CodeFirst .ConfigEntity(a => { a.Name("xxdkdkdk1").SelectFilter("a.Id22 > 0"); a.Property(b => b.Id).Name("Id22").IsIdentity(true); a.Property(b => b.name).DbType("varchar(100)").IsNullable(true); }) .ConfigEntity(a => { a.Name("xxdkdkdk2").SelectFilter("a.Idx > 0"); a.Property(b => b.Id).Name("Id22").IsIdentity(true); a.Property(b => b.name).DbType("varchar(100)").IsNullable(true); }); var ddl1 = g.mysql.CodeFirst.GetComparisonDDLStatements(); var ddl2 = g.mysql.CodeFirst.GetComparisonDDLStatements(); var t1id = g.mysql.Insert().AppendData(new TestFluenttb1 { }).ExecuteIdentity(); var t1 = g.mysql.Select(t1id).ToOne(); var t2lastId = g.mysql.Select().Max(a => a.Id); var t2affrows = g.mysql.Insert().AppendData(new TestFluenttb2 { Id = t2lastId + 1 }).ExecuteAffrows(); var t2 = g.mysql.Select(t2lastId + 1).ToOne(); } } class TestFluenttb1 { public int Id { get; set; } public string name { get; set; } = "defaultValue"; } [Table(Name = "cccccdddwww")] class TestFluenttb2 { [Column(Name = "Idx", IsPrimary = true, IsIdentity = false)] public int Id { get; set; } public string name { get; set; } = "defaultValue"; } }