遇到数据库问题

时间:2017-07-19 13:19:24

标签: c++

在我的c ++程序中,我遇到了我的程序问题,我在同一时间通过数据库运行太多东西而且出现错误。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

鉴于您已使用服务器端代码更新了代码。这是解决死锁问题的唯一方法。

首先,您需要了解默认情况下,事务的实体框架隔离级别为可序列化。以下是SQL server Isolation levels.

的更多信息

它表示对于Serializable:

  • 在当前事务完成之前,没有其他事务可以修改当前事务已读取的数据。

因此,您需要做的是将EF事务范围隔离级别更改为快照示例:

using (var scope = new TransactionScope(TransactionScopeOption.Required, new 
TransactionOptions { IsolationLevel= IsolationLevel.Snapshot }))
{
    // do something with EF here
    scope.Complete();
}

答案 1 :(得分:0)

recordPayroll(): void {
  return Observable.of(this.ptoData).mergeMap(ptoDataItem => { 
    if (this.ptoDataItem.date < this.date && this.ptoDataItem.type != "Uncharged") {
      this.ptoDataItem.inPR = true;
      return this.ptoDataService.update(this.ptoDataItem);
    } 
    return Observable.empty();
  }
}

不保证这会起作用。我自己不使用TS而不习惯RxJS。