【发布时间】:2021-06-09 12:58:01
【问题描述】:
我有一个网络服务,它具有创建某种实体的操作。 Web 服务中执行实际工作的方法会调用该 Web 服务的其他几个方法。其中一些方法需要访问数据库才能查询或更新数据。
如何确保作为网络请求的一部分进行的所有调用都是同一事务的一部分?
示例
我的主要方法打开一个数据库连接(和事务)。我应该将数据库连接对象(和/或事务对象)传递给其他方法,以便他们可以重用现有的方法而不是打开自己的方法吗?
我希望尽可能接近这里的标准,但我不确定这种情况,因为您发现的大多数示例只执行单个 SQL,通常在 using 块内。
在我的情况下,我还将使用创建数据库连接的 using 块,并在此块内调用其他几个传递数据库连接的方法。这是好的做法还是有其他方法?
【问题讨论】:
标签: c# sql web-services transactions