使用Dapper映射非基本对象

dapper orm

我有以下课程

    public class Point
    {
        public long Id { get; set; }

        public Address Address { get; set; }
    }

我试图让Dapper正确映射地址数据。

   var points = this._db.Query<Point>("select * from Points").ToList();

我的表架构如下:

数据库架构

有没有办法为Dapper指定特定的列数据,以映射非原始对象? visual studio调试器图像

一般承认的答案

为了正确映射,您需要使用多地图功能。

 var points = this._db.Query<Point, Address, Point>("select p.Id, 'x' [Id], p.Address_City [City], p.Address_State [State] from Points p", (p, a) =>
            {
                p.Address = a;
                return p;
            }).ToList();


许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因