问题标签 [dapper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 使用 Dapper 填充 Enum 属性
在使用 Dapper 的 Query() 函数时,我试图填写一个具有枚举值属性的类。在我的数据库中,此列存储为一个字节。但是,在课堂上,它们是一个枚举。在旧的 ADO.NET 方法中,我会在阅读器循环期间进行转换:
使用 Dapper 时,我不知道如何进行这种转换。例如,当我做类似的事情时
我得到一个类型的错误
有没有办法使用 Dapper 的 Query() 来填充一个包含枚举类型属性的类?
orm - 为嵌套对象编写 Dapper 查询
我有一个代码结构如下:
这是我的存储过程,它从数据库中填充数据。
如何编写从数据库中提取所有人员的 Dapper 查询?
例子:
List<Person> Persons = DbConn.Query<Person>("SpGetAllPersons", CommandType.StoredProcedure);
c# - 如何使用 Dapper 有效地选择聚合对象?
假设我有一系列形成聚合的对象。
使用 Dapper,从数据库中的表中填充这些的最佳方法是什么(在我的情况下是 postgres,但这不重要)。示例中的表格与对象模型几乎是一对一的。表示与每个从属对象的外键关系的类的 Items 属性。即3个表,A和B是一对多关系,B和C是一对多关系。
因此,对于一个给定的 AI ID,我希望我的对象也拥有它们的所有子数据。
我最好的猜测是我应该以某种方式使用 QueryMultiple 但我不确定如何最好地做到这一点。
c# - Dapper 和匿名类型
Dapper 可以使用匿名类型吗?
我可以看到你如何使用动态即
那么是否可以做一个
或者之后的一些变化?
编辑
我想我会向你展示我现在是如何使用 Dapper 的。我倾向于缓存(使用 InMemoryCache)数据,所以我只在开始时执行一个大查询(使用 Dapper 非常快),然后我使用 Linq 在我的存储库中对其进行排序。
InMemoryCache 看起来像这样
c# - 有没有办法通过字符串或索引访问 Dapper FastExpando 中的列?
我正在拉入一个Dapper FastExpando
对象,并希望能够在运行时而不是在设计/编译时动态引用列名。所以我希望能够做到以下几点:
我希望能够做到以下几点:
我明白我可以做到:
但我不能这样做,因为我需要的属性的名称要到运行时才能知道。
这个 SO Question的答案不起作用。我仍然得到同样的Target Invocation
例外。所以...
有什么办法可以用 Dapper FastExpando 做我想做的事吗?
c# - 将枚举作为字符串存储在数据库中
我正在尝试使用 dapper。我有一个类,它有一个枚举,值作为字符串存储在数据库中。
这适用于使用 GenericEnumMapper 的 FluentNHibernate
是否可以对 Dapper 做同样的事情?
sql-server - 使用 SqlConnection / System.Transactions 的每请求会话
我刚刚开始在一个项目中使用 Dapper,在过去的几年中主要使用的是 NHibernate 和 EF 等 ORM。
通常在我们的 Web 应用程序中,我们实现每个请求的会话,在请求开始时开始事务并在结束时提交。
在直接使用 SqlConnection / System.Transactions 时,我们是否应该做类似的事情?
StackOverflow 是如何做到的?
解决方案
听取@gbn 和@Sam Safron 的建议,我没有使用交易。在我的情况下,我只做读取查询,所以似乎没有真正的要求使用事务(与我被告知的隐式事务相反)。
我创建了一个轻量级会话接口,以便我可以使用每个请求的连接。这对我来说非常有益,因为使用 Dapper 我经常需要创建一些不同的查询来构建一个对象,并且宁愿共享相同的连接。
每个请求的连接范围和处理它的工作由我的 IoC 容器 (StructureMap) 完成:
c# - 在 Oracle 中使用 Dapper
我们使用 Oracle 作为我们的数据库提供者,并且已经考虑用在底层使用 Dapper 的更合理的基于存储库的模式来替换我们的一些数据访问层(难以维护,更难合并 XSD)。但是,我们在将它与 oracle 一起使用时遇到了许多问题。
命名参数:这些似乎被忽略了,每当它们在查询中使用时,Oracle 似乎会以它喜欢的任何顺序解释它们。SqlMapper 返回正确命名的参数,它们只是在 Oracle 中没有正确解释
变量的“@”命名约定与 oracle 命名参数不兼容。它希望在任何参数前面看到“:”
有没有人以前遇到过这种情况并有任何解决方法?
dapper - Dapper - 具有单个返回值的多重映射
下面是我用来返回对象的分页列表的代码:
虽然这可行,但这意味着我必须定义我的条件两次,一次用于计数查询,一次用于结果集查询。我可以只执行一个查询,而不是求助于字符串连接:
但是,我似乎无法使用 Dapper 进行映射。我不能使用与上面相同的方法,因为没有多个结果。我尝试过使用多重映射,但这预计会返回一个 IEnumerable。
我将如何映射到以下内容?
谢谢
本
.net - Dapper 是否支持 SQL 2008 表值参数?
有谁知道是否可以使用 Dapper 将表值参数数据传递给存储过程?