shuxinqin / Chloe

A lightweight and high-performance Object/Relational Mapping(ORM) library for .NET --C#
https://github.com/shuxinqin/Chloe/wiki
MIT License
1.52k stars 457 forks source link

成员表达式封装 #335

Closed liangfeng-hash closed 2 years ago

liangfeng-hash commented 2 years ago

Chloe查询写法:p => p.ID == 集合[下标].ID 请问您是如何实现这种右边是 集合[下标].属性 这种表达式查询的。 我自己写一个orm只实现了 p => p.ID == 对象.ID 这种查询方法。

shuxinqin commented 2 years ago

先判断表达式是否可以求值,可以的话就反射求值 https://github.com/shuxinqin/Chloe/blob/master/src/Chloe/Core/Visitors/ExpressionEvaluator.cs 集合[下标] 本质其实调用 get_Item 方法