有没有办法在 Dapper 中同时使用 MultiMapping 和 QueryMultiple?

2024-05-06

我有一些需要一起运行的查询,我可以使用查询多个特征。

但在这种情况下我无法找出如何使用多重映射.

有谁知道实现这一目标的方法吗?


我认为这就是您正在寻找的内容,尽管如果没有您尝试执行的查询的示例,很难判断。

var sql = @"Select * 
            From Parent 
            Left Join Child on Child.ParentID = Parent.ParentID 
            Where Parent.ParentID = @id
            ... more queries";

using(var reader = connection.QueryMultiple(sql, new {id=selectedId}))
{
    var stuff = reader.Read<Parent, Child, Parent>(
        (p,c)=> 
        {
            p.Child = c;
            return p;
        }, splitOn: "ChildId").Single();
    // Continue to read from the other queries in your sql.
}

基本上是Read的方法SqlMapper.GridReader类似于Query扩展方法。你只得到splitOn具有采用两种以上泛型类型的重载之一的参数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法在 Dapper 中同时使用 MultiMapping 和 QueryMultiple? 的相关文章

  • 如何读取 Dapper 生成的 SQL 查询?

    我有一个标准代码 public IEnumerable ExperimentSelect object parameters using var connection new SqlConnection ConnectionString c
  • Dapper for NET Core:插入表并返回插入行的 id [重复]

    这个问题在这里已经有答案了 我的存储库中有以下方法 到目前为止 我相信返回的 int 只是指示操作是否成功的一个 我希望 int 是成功执行后返回的 id 表的单列 我该如何做到这一点 public async Task
  • 短小精悍地插入一个列表?

    我想做批量插入 A 是一个 ID B 是 ID 列表 我的插入语句看起来像这样 但它是错误的 我如何重写它才能工作 我能想到的唯一解决方案是在语句之 外使用 foreach 循环 Execute insert into MyTable a
  • 哪些 .Net Orms 或 MicroOrms 支持异步操作和 PostgreSql

    哪些 ORM 支持异步操作和 postgresql 我更喜欢简单的 MicroOrms 例如 Dapper 和 OrmLite 因为它们似乎具有出色的性能并且非常简单 但据我所知 它们不支持异步操作 也许我错了 但是让所有 IO 绑定操作异
  • Automapper 与 Dapper 的地图绘制对比

    这个问题是为了验证当前的实施在最佳实践和性能方面是否是正确的方法 到目前为止 在我之前的所有公司中 我一直在使用 Auto Mapper 将关系对象映射到域模型实体 并将域模型实体映射到 Dtos ORM 工具是实体框架 在我目前的公司中
  • 如何使用 Dapper.Contrib 正确“单一化”表名?

    我有一个 Net Core 3 1 控制台应用程序 在SQL Server数据库中 我有单数名称的表 与我的POCO类相同 这方便匹配和维护 对于我想使用的插入 更新和删除操作Dapper Contrib图书馆 但是 当我运行 Insert
  • 将字符串隐式转换为自定义类型

    我有一个名为 AdviceId 的类 它支持与字符串之间的隐式转换 我还重写了类上的 ToString 方法 以确保每当调用此方法时都返回正确的字符串输出 我的应用程序使用 Dapper 保存数据 以前 AdviceIds 是作为字符串保存
  • Kendo UI jQuery 网格服务器端过滤

    我正在使用 Kendo UI for jQuery Grid 来显示一些数据 到目前为止 我正在使用客户端过滤和分页 其中所有数据记录都在对服务器的初始调用中返回 Web API 和 Dapper 在服务器端使用 然而 由于数据源随着时间的
  • 如何使用 Moq.Dapper 模拟 QueryMultiple

    我正在编写单元测试用例 并且我成功地编写了单元测试用例Query 但我无法编写单元测试用例QueryMultiple 对于查询我是这样写的 IEnumerable
  • Dapper 可以在 Mono 上运行吗?

    我们正在考虑搬到Mono http www mono project com我看到了Dapper http code google com p dapper dot net 与 MySql 一起使用 然而 这是 ADO NET 提供程序的情
  • “dapper-dot-net”中的交易

    如果我的 DAL 使用 dapper dot net 如何创建交易 我的 C winform 应用程序将在网络中使用 数据将保存到中央 SQL 服务器 我的用例需要使用事务 我可以使用 dapper 来完成此操作 还是需要使用 NHiber
  • 使用 Dapper 和 Postgresql - citext 数据类型

    我不确定是否有办法支持这一点 但我无法让 Dapper 将字符串参数值映射到 Postgresql citext 数据类型 因为它似乎使用的是文本类型 特别是 我试图调用一个接受 citext 参数的函数 我得到的错误是 var c Con
  • 使用简洁的 DAL 和 C#

    我有一个使用 Dapper 的数据访问层 但不禁觉得它可以更加优雅 DAL 只是传递参数并根据模型的命名响应映射模型 因此该部分至少是直接的 但我讨厌看起来重复的代码 这是一个例子 public IEnumerable
  • Dapper:是否可以自定义特定类型的特定字段的类型映射?

    假设我有这个User class public class User public int ID get set public string FirstName get set public string LastName get set
  • 我可以为 dapper-dot-net 映射指定数据库列名称吗?

    dapper dot net 有没有办法使用属性来指定应该使用的列名称而不是属性名称 public class Code public int Id get set public string Type get set This is ca
  • Sql CE 多条语句不一致

    长期以来 您确实可以使用 SQL CE 执行多个语句 https stackoverflow com questions 6970502 can i execute multiple statements in sql server com
  • Dapper 是否支持在单个查询中插入多行?

    Does StackExchange Dapper https github com StackExchange Dapper支持以下SQL语法吗 INSERT INTO MyTable a b c VALUES 1 2 3 4 5 6 7
  • Dapper 与 SQLite 和 C# 错误“为命令提供的参数不足”

    自原始帖子以来的新信息 这段代码成功检索了一个实体 这让我认为 QueryMultiple 映射与 Query 不同 真的吗 using var multi sqlConn QueryMultiple sqlStmt new Mytable
  • Dapper MySQL 返回值

    我在 ASP net Identity 项目中使用 dapper 和 MySql 时遇到问题 我想将用户插入到表 users 中 并希望从这次插入中返回自动生成的 id 但我收到语法错误 我不知道为什么 这是我的方法插入代码 public
  • Bool类型返回规则

    我使用 dapper ORM 所以我使用两个规则Query

随机推荐