mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 18:52:50 +08:00
- 优化 TableInfo 元数据对 interface 实现类 IsVirtual 重写的判断(增加 IsFinal == false);
This commit is contained in:
parent
0effad75e4
commit
ec4b934f23
@ -116,10 +116,17 @@ namespace FreeSql.Tests
|
|||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public interface EdiInterface
|
||||||
|
{
|
||||||
|
List<EdiItem> Children { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
[Table(Name = "EDI")]
|
[Table(Name = "EDI")]
|
||||||
public class Edi
|
public class Edi : EdiInterface
|
||||||
{
|
{
|
||||||
[Column(Name = "EDI_ID")] public long Id { get; set; }
|
[Column(Name = "EDI_ID")] public long Id { get; set; }
|
||||||
|
|
||||||
|
public List<EdiItem> Children { get; set; }
|
||||||
}
|
}
|
||||||
[Table(Name = "EDI_ITEM")]
|
[Table(Name = "EDI_ITEM")]
|
||||||
public class EdiItem
|
public class EdiItem
|
||||||
@ -131,6 +138,8 @@ namespace FreeSql.Tests
|
|||||||
[Fact]
|
[Fact]
|
||||||
public void Test03()
|
public void Test03()
|
||||||
{
|
{
|
||||||
|
g.sqlite.Select<Edi>().ToList();
|
||||||
|
|
||||||
var itemId2 = 2;
|
var itemId2 = 2;
|
||||||
var itemId = 1;
|
var itemId = 1;
|
||||||
var edi = g.sqlite.Select<Edi>()
|
var edi = g.sqlite.Select<Edi>()
|
||||||
|
@ -84,10 +84,11 @@ namespace FreeSql.Internal
|
|||||||
{
|
{
|
||||||
if (common.CodeFirst.IsLazyLoading)
|
if (common.CodeFirst.IsLazyLoading)
|
||||||
{
|
{
|
||||||
var getIsVirtual = p.GetGetMethod()?.IsVirtual;// trytb.Type.GetMethod($"get_{p.Name}")?.IsVirtual;
|
var getMethod = p.GetGetMethod();
|
||||||
var setIsVirtual = setMethod?.IsVirtual;
|
var getIsVirtual = getMethod?.IsVirtual == true && getMethod?.IsFinal == false;// trytb.Type.GetMethod($"get_{p.Name}")?.IsVirtual;
|
||||||
|
var setIsVirtual = setMethod?.IsVirtual == true && setMethod?.IsFinal == false;
|
||||||
if (getIsVirtual == true || setIsVirtual == true)
|
if (getIsVirtual == true || setIsVirtual == true)
|
||||||
propsLazy.Add(NaviteTuple.Create(p, getIsVirtual == true, setIsVirtual == true));
|
propsLazy.Add(NaviteTuple.Create(p, getIsVirtual, setIsVirtual));
|
||||||
}
|
}
|
||||||
propsNavObjs.Add(p);
|
propsNavObjs.Add(p);
|
||||||
continue;
|
continue;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user