mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 10:42:52 +08:00
- 修复 导航属性配置和Aop冲突的 bug;
This commit is contained in:
parent
56cd333f6f
commit
de6e99c710
@ -385,9 +385,41 @@ namespace FreeSql.Tests
|
||||
}
|
||||
|
||||
|
||||
[Table(Name = "bz_web_post")]
|
||||
public class Post
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public int AuthorId { get; set; }
|
||||
[Navigate("AuthorId")]
|
||||
public AuthorTest Author { get; set; }
|
||||
}
|
||||
[Table(Name = "bz_web_authortest")]
|
||||
public class AuthorTest
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string Name { get; set; }
|
||||
[Navigate("AuthorId")]
|
||||
public List<Post> Post { get; set; }
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Test1()
|
||||
{
|
||||
IFreeSql fsql = new FreeSql.FreeSqlBuilder()
|
||||
.UseConnectionString(FreeSql.DataType.PostgreSQL, "Host=192.168.164.10;Port=5432;Username=postgres;Password=123456;Database=tedb;Pooling=true;Maximum Pool Size=7")
|
||||
.UseEntityPropertyNameConvert(Internal.StringConvertType.PascalCaseToUnderscoreWithLower)
|
||||
.UseNoneCommandParameter(true)
|
||||
.UseAutoSyncStructure(true) //自动同步实体结构到数据库
|
||||
.UseMonitorCommand(a => Trace.WriteLine(a.CommandText))
|
||||
.Build();
|
||||
|
||||
var data = fsql.Select<Post>().ToList(r => new
|
||||
{
|
||||
Id = r.Id,
|
||||
Name = r.AuthorId.ToString(),
|
||||
AuthorName = r.Author.Name,
|
||||
});
|
||||
|
||||
//g.mysql.Aop.AuditValue += (s, e) =>
|
||||
//{
|
||||
// if (e.Column.CsType == typeof(long)
|
||||
|
@ -75,8 +75,7 @@ namespace FreeSql.Internal
|
||||
var setMethod = trytb.Type.GetMethod($"set_{p.Name}");
|
||||
var colattr = common.GetEntityColumnAttribute(entity, p);
|
||||
var tp = common.CodeFirst.GetDbInfo(colattr?.MapType ?? p.PropertyType);
|
||||
if (tp == null && colattr != null) colattr.IsIgnore = true; //无法匹配的属性,认定是导航属性,且自动过滤
|
||||
if (tp == null && colattr == null)
|
||||
if (tp == null && colattr?.IsIgnore != true)
|
||||
{
|
||||
if (common.CodeFirst.IsLazyLoading)
|
||||
{
|
||||
@ -88,6 +87,7 @@ namespace FreeSql.Internal
|
||||
propsNavObjs.Add(p);
|
||||
continue;
|
||||
}
|
||||
if (tp == null && colattr != null) colattr.IsIgnore = true; //无法匹配的属性,认定是导航属性,且自动过滤
|
||||
if (colattr == null)
|
||||
colattr = new ColumnAttribute
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user