在 ASP.NET Web API 中使用交易

Using transactions in ASP.NET Web API

我在 Web 中对控制器进行了两次不同的调用 API。假设第一个路线是 http://localhost/1 and for second http://localhost/2

我的目标是做一些类似交易的事情。在第一次通话中,我想将数据发送到服务器。所以这就是我的第一个问题:如何在服务器上短时间保存数据,而不是将其保存到数据库中?这方面的最佳做法是什么?

在第二次通话中,我正在发送验证码。如果代码没问题,那么我将对客户端在上次调用中发送的数据做一些处理。

这听起来像是一笔交易。就像如果代码没问题就提交或者如果代码验证失败就回滚事务,但是我不确定当你有两种不同的 POST 方法时,在这种情况下是否可以使用事务。

谁能帮我多想想这个?

不要在服务器中临时保存任何东西。这是一个不好的做法。

WebApi 是无状态的。所以,最好把每一个细节都保存在服务器中。

  1. 在第一个POST调用中,return一个唯一的交易参考号(使用SQL服务器保存此信息)

    例如POST 到 http://localhost/requestVerificationNumber/ 其中 return 是一个 GUID

  2. 在第二次POST调用中,通过将验证码与之前存储的唯一交易号进行匹配来交叉检查验证码。第二次 POST 调用负责发送该参考号。

    例如POST 到 http://localhost/verifyCode/ 以及之前发送的 GUID。 这种方法的好处是所有的交易都存储在Sql服务器上,以后可以进行操作。