Table:
create table Documents
(Id int,
SomeText varchar(100),
CustomerId int,
CustomerName varchar(100)
)
insert into Documents (Id, S
Example taken from dapper project page (see the Multi Mapping section):
var sql =
@"select * from #Posts p
left join #Users u on u.Id = p.OwnerId
Order by p.Id";
var data = connection.Query<Post, User, Post>(sql, (post, user) => { post.Owner = user; return post;});
var post = data.First();
post.Content.IsEqualTo("Sams Post1");
post.Id.IsEqualTo(1);
post.Owner.Name.IsEqualTo("Sam");
post.Owner.Id.IsEqualTo(99);
var docs = connection.Query<Document, Customer, Document>(
"select Id, SomeText, CustomerId as [Id], CustomerName as [Name] from Documents",
(doc, cust) => { doc.Customer = cust; return doc; }).ToList();