TransactionScope Complete

时间:2016-11-09 09:46:03

标签: c# asp.net-mvc transactionscope

我有一个UserRegistration表单,其中包含有关用户的一些特定信息。我想更新表单并希望通过电子邮件向用户提供有关更改的信息。问题是在我尝试检索用户信息时更新完成后(为了发送电子邮件)我收到以下错误。

  

底层提供程序在Open上失败。

这是我尝试的内容

 using (TransactionScope _ts = new TransactionScope())
 {
    _dbRegn = _db.StudentRegistrations.Where(r => r.Id == mdlCourseInterchange.StudentRegistration.Id)
              .FirstOrDefault();

    if(_dbRegn!=null)
    {
        //code for updating _dbRegn
        ......
        ......
        ......

        _db.Entry(_dbRegn).State = EntityState.Modified;
        int j = _db.SaveChanges();
        if (j > 0)
        {
           _ts.Complete();   

          StudentRegistration _studReg = _db.StudentRegistrations
                                         .Where(r => r.Id == _dbRegn.Id).FirstOrDefault();
           //Here I am getting the error .Cannot get latest studentregistration details
        }                               
    }
 }

是否可以在完成交易后检索最新的StudentRegistration详细信息

1 个答案:

答案 0 :(得分:0)

是否正在使用实体框架来访问数据?尝试在连接字符串配置中设置用户和密码。这也发生在我身上。