“dapper-dot-net”中的交易

2024-01-24

如果我的 DAL 使用 dapper-dot-net,如何创建交易?

我的 C# winform 应用程序将在网络中使用,数据将保存到中央 SQL 服务器。

我的用例需要使用事务。我可以使用 dapper 来完成此操作,还是需要使用 NHibernate 之类的东西?

另外,如果我使用存储过程,此框架是否存在任何风险或限制?由于任何可能的限制,我是否需要改变我的方法?


我在使用存储过程方面没有遇到任何限制,并且使用 dapper 所面临的风险与使用存储过程所面临的风险相同

这是一个关于如何使用 dapper 进行事务处理的简单示例

using (var connection = Db.GetConnection())
{
     connection.Open();
     IDbTransaction transaction = connection.BeginTransaction();
     try
     {
         var newId= connection.Query<int>(@"Select id from table1 where id=@id", new{id}, transaction).Single();
         connection.Execute(@"INSERT into table1 ...",new {p1, p2}, transaction);
         connection.Execute(@"INSERT into table2 ...",new {p1, p2}, transaction);
         transaction.Commit();
     }
     catch (Exception ex)
     {
         transaction.Rollback();
     }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“dapper-dot-net”中的交易 的相关文章

  • 托管扩展性框架 (MEF) 与复合 UI 应用程序块 (CAB)

    我们目前正在考虑在下一个应用程序中使用 CAB 或 MEF 我没有在 Codeplex 上看到任何有关如何处理同级控制通信的事件代理的示例 也许我错过了 MEF 中的控制间通信如何工作 此外 我们计划使用 Infragistics 它为 C
  • 您会在新的商业项目中使用 S#arp 架构吗?

    The S arp 架构 http code google com p sharp architecture 看起来真的很酷 但是您是否认为它仍然太新而无法在重要的新项目中做出承诺 我们假设该项目乍一看很适合它 It all seems非常
  • 使用异步时 SqlConnection 未被释放

    我有一个项目 有一个 Sql Server 数据库后端和 Dapper 作为 ORM 我正在尝试使用 Dapper 的QueryAsync 方法来获取一些数据 不仅如此 对我的存储库的调用来自几个使用 a 调用的任务内部Task WhenA
  • 插件架构中的反射与属性

    我正在开发一个在启动时从子目录加载插件的应用程序 目前我正在通过使用反射来迭代每个程序集的类型并查找实现 IPluginModule 接口的公共类来实现此目的 由于反射涉及性能影响 并且我预计一段时间后会有多个插件 我想知道定义在程序集级别
  • 为什么要分离接口和实现?

    在生产代码中 我经常看到定义如下的类 public interface SomeComponent Some methods public class SomeComponentImpl implements SomeComponent S
  • 在 Codeigniter 中使用/嵌入 Ember js

    我即将开始开发一个 Web 应用程序 使用 Ember js 作为前端技术 使用 Codeigniter 作为后端 我遇到的问题是如何在 codeigniter 中嵌入或使用 ember js 可以通过 Web 服务从 codeignite
  • 有没有办法在 Dapper 中同时使用 MultiMapping 和 QueryMultiple?

    我有一些需要一起运行的查询 我可以使用查询多个特征 但在这种情况下我无法找出如何使用多重映射 有谁知道实现这一目标的方法吗 我认为这就是您正在寻找的内容 尽管如果没有您尝试执行的查询的示例 很难判断 var sql Select From
  • 就MVC模式而言,Struts 2中使用的Action是什么?

    在Struts2中 控制器将请求分派给Action Action将其传递给后端逻辑 这可以看作是一个非常大的过程 model 处理请求 JSP代表视图 Struts2中如何定义Action 肯定是not一个看法 是控制器还是模型 Strut
  • 您的 Web 服务版本控制最佳实践是什么?

    我们有 2 个独立的产品 需要通过 Web 服务相互通信 支持 API 版本控制的最佳实践是什么 I have 本文 http www ibm com developerworks webservices library ws versio
  • 如何通过 NUnit 有效地对使用 ADO.NET 和 SQL Server 的 DAL 进行单元测试?

    因此 您在 C 中有一个使用存储库模式的 DAL 并且每个存储库都有一个接口 它由 ADO NET MS SQL Server 和存储过程调用支持 这对于在进行单元测试时对正在其他地方使用的存储库进行存根 模拟非常有用 我喜欢它 不过 我很
  • 使用 LINQ to SQL 的 .NET 架构的最佳设计实践(DAL 必要吗?我们真的可以使用 POCO吗?要采用的设计模式吗?)

    我避免在 net arch n 层架构上编写看起来像是另一个线程的内容 但请耐心等待 希望我和其他人一样 在选择用于企业应用程序的架构时 考虑到当今的趋势和新兴技术 仍然没有 100 满意或不清楚应采取的最佳方法 我想我正在寻求大众社区对方
  • 如果我以后要应用ado实体框架,推荐的数据访问层设计模式是什么?

    我正在创建一个网站并使用 Linq to SQl 作为数据访问层 并且我愿意使该网站可以在 linq to sql 和 ado 实体框架上工作 而无需更改其他层中的许多内容 业务逻辑层或 UI层 实现这一目标的推荐模式是什么 你能简单解释一
  • 定时任务应该放在哪一层?

    我正在尝试使用分层架构来实现 DDD 应用程序 我有 基础设施层 实现应用程序的技术特定部分的层 领域层 包含领域模型的层 应用层 包含与领域模型交互的干扰的层 接口层 从外部接收事件的层 经典的 3 层 基础设施 架构非常清晰 但我的应用
  • 用于具有转换的非导航应用程序的视图控制器/NIB 架构?

    我正在修补一个 iPad 应用程序 就像许多 iPad 应用程序一样 它不使用 UINavigation 根视图控制系统 因此我没有每个应用程序 视图 的自然所有权 我基本上有两个基本视图 文档列表视图和文档编辑视图 我正在使用 UIVie
  • 将 dapper.net 的存储过程输出转换为列表

    我是 Dapper net 的新手 我正在尝试使用 Dapper Net 执行存储过程 我有一个模特班StoredProcedureResult 与存储过程的输出相关 public StoredProcedureResult public
  • CoreBluetooth:如何为许多特性(30 - 40)设计代码?

    我搜索了一下 发现这是一个可能重复的问题 同一设备的多个 CBPeripheral https stackoverflow com questions 10836703 multiple cbperipherals for same dev
  • 有人还在使用客户端服务器架构吗[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我编写软件已有几十年了 现在一切都是网络 在网络出现之前 我们拥有的客户端服务器应用程序基本上是直接与数据库对话的胖客户端应用程序 它
  • Google BigQuery 底层架构

    所以我大约 10 分钟前才开始摆弄 Google BigQuery 我想知道是否有人知道他们用来存储数据的底层架构 例如 这只是他们自己的下一代 BigTable 基础设施吗 另外 他们在索引 索引重建等方面使用什么样的策略是否清楚 我只是
  • RESTful API:我应该在哪里编码我的工作流程?

    我正在开发一个 RESTful API 这是我的第一个 API 也是我的第一个真正大型的编码项目 因此 我仍在学习很多关于建筑等方面的知识 目前 我的 api 设置分为以下几层 HTTP层 资源层 领域模型 业务逻辑层 数据访问 存储层 持
  • 从另一个命令 Handle() 方法中调用命令

    嗨 我正在使用简易注射器 https simpleinjector orgDI 库并一直在关注一些关于围绕命令模式设计的架构模型的非常有趣的材料 同时 在我的架构的命令方面 https cuttingedge it blogs steven

随机推荐

  • Vue/Vite 原生设置中出现“TypeError:无法获取动态导入的模块”

    我们有一个普通的 Vue Vite 设置 我正在接收TypeError Failed to fetch dynamically imported module在哨兵日志上 尽管我没有足够的数据来确认 但这些错误似乎与新的产品部署及时相关 它
  • 设计authenticate_user!进行远程操作时中断:对非设备控制器操作的真实请求

    我对 Devise 有疑问before action authenticate user 过滤remote true选项 我有一个链接标签 它发出正常的 PUT 请求messages read of my MessagesControlle
  • scala 线程安全 HashSet

    使 HashSet 线程安全的可能方法是什么 看到了一些样本 如下所示 var test new mutable HashSet Long with mutable SynchronizedSet Long SynchronizedSet
  • 如何在 UILabel 中使字符等宽

    我使用时遇到问题UILabel 我这里有两个标签 上图 它们具有相同的字体和相同的宽度 textAlignment都是左边的 它们都有10个字符 但是每个字符都有不同的宽度 所以它不能一一对齐 我正在尝试动态添加间距但我未能做到这一点 那么
  • 无法从 git.gnome.org 克隆

    我正在使用 Ubuntu 操作系统 我尝试从 git gnome org 克隆几个存储库 例如 git clone git git gnome org newcomers tutorial Cloning into newcomers tu
  • 如何检查用户是否属于AD组?

    起初我认为下面的代码有效 因为如果我将组设置为 IT 它就会正常工作 因为我的用户名位于活动目录中的 IT 组中 我了解到的是 无论我的用户名是否在 IT 组中 它总是返回 true 如果我将其更改为我所在的任何其他组 它总是返回 fals
  • 是否可以将块定义为类的成员?

    我正在尝试在 Objective C 中实现一个非常简单的策略类 它允许内联定义策略而不是通过继承定义策略 目前我的代码如下所示 interface SSTaskStrategy NSObject NSArray strategy void
  • 如何使用 ggplot2 堆积条上的误差线

    I m struggling to put error bars into the correct place on a stacked bar As I read on an earlier post I used ddply in or
  • 如何使用 Node.js 提供图像

    我有一个徽标位于public images logo gif 这是我的nodejs代码 http createServer function req res res writeHead 200 Content Type text plain
  • 如何用 Amazon S3 替换 PHP imagecopyresampled?

    我正在使用jquery文件上传 http blueimp github io jQuery File Upload 脚本并已成功将主图像上传到 Amazon S3 我现在尝试更换多个图像尺寸以上传到 S3 中的子文件夹或对象 在 的里面创建
  • Spring boot - 登录后返回用户对象

    我有一个 Spring Boot 应用程序 其 WebSecurityConfigurerAdapter 配置如下 http csrf disable exceptionHandling authenticationEntryPoint r
  • 当同时有多个请求时,Redis 不会更新

    我有一个 Node js 应用程序 我正在尝试使用 Redis 缓存来记录发出的请求量 这只是一个概念证明 旨在了解 Redis 是否是适合我的工具 但我对结果有点失望 我想知道 Redis 是否只是性能非常糟糕 或者我的代码是否存在缺陷
  • 在 Laravel 之外使用 Laravel Facade

    我有一个 Laravel 应用程序 我将其用作 Joomla 中构建的更大应用程序的 API 我真的很喜欢使用 Laravel 并决定在 Joomla 应用程序中使用 Eloquent 我通过导入来实现这个工作bootstrap autol
  • pymc3中的多元线性回归

    我最近开始学习pymc3专门使用后emcee多年来 我遇到了一些概念问题 我正在练习第七章霍格的数据拟合模型 https arxiv org abs 1008 4686 这涉及到具有任意二维不确定性的直线的 mcmc 拟合 我很容易地完成了
  • g++“没有调用错误的匹配函数”

    我有A级 template
  • 为什么内联构造函数和析构函数在 C++ 中不是一个好主意?

    我记得在一本 C 书籍中读过 很久以前 使用内联构造函数和析构函数并不是一个好主意 尤其是对于派生类 我知道内联会导致对象代码膨胀 但是是否有其他设计考虑因素会阻止内联构造函数和析构函数 当然 大多数编译器可能会拒绝内联并继续创建函数体 但
  • NEO4J Cypher 查询:Where 子句中的关系方向错误

    样本数据 示例查询 CREATE a1 A title a1 CREATE a2 A title a2 CREATE a3 A title a3 CREATE b1 B title b1 CREATE b2 B title b2 MATCH
  • gitignore 递归行为在哪里指定?

    参考在线文档 http git scm com docs gitignore 如果模式不包含斜杠 Git 会将其视为 shell glob 模式 并检查相对于 gitignore 文件位置的路径名是否匹配 如果不是来自 gitignore
  • 随机 Python 字典键,按值加权

    我有一本字典 其中每个键都有一个可变长度的列表 例如 d a 1 3 2 b 6 c 0 0 有没有一种干净的方法来获取随机字典键 并按其值的长度加权 random choice d keys 会对键进 行同等的权重 但在上面的情况下我想要
  • “dapper-dot-net”中的交易

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