FreeSql (二十二)Dto 映射查詢

適合喜歡使用 dto 的朋友,不少時候 entity 與 dto 屬性名相同,屬性數據又不徹底一致。html

有的人先查回全部字段數據,再使用 AutoMapper 映射。app

咱們的功能是先映射,再只查詢映射好的字段,節省了io性能。性能

Select<Tag>().Limit(10).ToList(a => new TestDto { id = a.Id, name = a.Title });
Select<Tag>().Limit(10).ToList(a => new TestDto());
Select<Tag>().Limit(10).ToList(a => new TestDto { });
Select<Tag>().Limit(10).ToList(a => new TestDto() { });
Select<Tag>().Limit(10).ToList<TestDto>();

這種映射支持單表/多表。code

查找規則,查找屬性名,會循環內部對象 _tables(join 查詢後會增加),以 主表優先查,直到查到相同的字段。htm

如:對象

A, B, C 都有 id,Dto { id, a1, a2, b1, b2 },A.id 被映射。也能夠指定 id = C.id 映射。blog

友情提醒:在 dto 能夠直接映射一個導航屬性事務

系列文章導航

相關文章
相關標籤/搜索