sve*_*vit 5 c# sql-server orm dapper
表:
create table Documents
(Id int,
SomeText varchar(100),
CustomerId int,
CustomerName varchar(100)
)
insert into Documents (Id, SomeText, CustomerId, CustomerName)
select 1, '1', 1, 'Name1'
union all
select 2, '2', 2, 'Name2'
Run Code Online (Sandbox Code Playgroud)
类别:
public class Document
{
public int Id { get; set; }
public string SomeText { get; set; }
public Customer { get; set; }
}
public class Customer
{
public int Id { get; set; }
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我如何与Dapper Documents一起完成所有工作Customers?这给了我所有文件,但客户是空的(当然):
connection.Query<Document>("select Id, SomeText, CustomerId, CustomerName from Documents")...
Run Code Online (Sandbox Code Playgroud)
编辑 - 类似但更高级的映射问题:Dapper中间映射
从dapper项目页面获取的示例(请参阅Multi Mapping部分):
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);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5423 次 |
| 最近记录: |