Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Die Operation ist für den Status des Transaktionsfehlers und den Transaktionsbereich nicht gültig

Nach einiger Recherche scheint es, dass ich mit dem TransactionScope-Block nicht zwei Verbindungen zu derselben Datenbank öffnen kann. Ich musste meinen Code so ändern, dass er so aussieht:

public void MyAddUpdateMethod()
{
    using (TransactionScope Scope = new TransactionScope(TransactionScopeOption.RequiresNew))
    {
        using(SQLServer Sql = new SQLServer(this.m_connstring))
        {
            //do my first add update statement            
        }

        //removed the method call from the first sql server using statement
        bool DoesRecordExist = this.SelectStatementCall(id)
    }
}

public bool SelectStatementCall(System.Guid id)
{
    using(SQLServer Sql = new SQLServer(this.m_connstring))
    {
        //create parameters
    }
}