我正在使用SQL Server和Dapper,我想将我的模型对象正确地存储到数据库中并检索它们。
这是我的模型,guid列表是其他模型‘生成器’ID的列表。
public class GeneratorSet
{
public Guid Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public List<Guid> GeneratorsList { get; set; }
}我的目标是正确地将这个对象映射到SQL Server表,然后使用Dapper从数据库中正确地检索我的对象。这种关系是多对多的(集合可以“拥有”多个生成器,而生成器可以被多个集合拥有)。
发布于 2017-08-28 21:52:22
您可以使用SplitOn参数来完成此操作...这里有一个指南;
https://taylorhutchison.github.io/2016/03/23/dapper-orm-complex-queries.html
或者仅仅使用唯一的名称和使用lambda的映射-使用文档中的示例(https://github.com/StackExchange/Dapper);
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();
Assert.Equal("Sams Post1", post.Content);
Assert.Equal(1, post.Id);
Assert.Equal("Sam", post.Owner.Name);
Assert.Equal(99, post.Owner.Id);我不能写实际的代码/查询,因为我不知道你的数据库模式...希望你能明白我的意思?
https://stackoverflow.com/questions/45919686
复制相似问题