Ich bin durch Dapper's Multi Mapping documentation gegangen, aber bleiben verwirrt.Versucht, Dapper Multi Mapping zu verstehen
Dies ist das Beispiel von Dapper Dokumentation
class Post
{
public int Id { get; set; }
public string Title { get; set; }
public string Content { get; set; }
public User Owner { get; set; }
}
class User
{
public int Id { get; set; }
public string Name { get; set; }
}
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();
Was mich verwirrt ist, wo die Variable post
und user
kam? Ich sehe in dieser Linie ...
connection.Query<Post, User, Post>
dass Post
und User
sind die Modelle und ich verstehe, dass ..
(post, user) => { post.Owner = user; return post;}
eine Funktion, die die Abbildung definiert, aber wo post
und user
instanziiert werden?
Sie kommen nicht überall her, es ist ein [Lambda-Ausdruck] (https://msdn.microsoft.com/en-us/library/bb397687.aspx), gehen Sie etwas über sie lesen :) – DavidG