Все мои транзакции в новых потоках являются зависимыми клонами, и родительский поток не завершает транзакцию раньше, чем любой из дочерних потоков. Есть еще мысли? Благодарю.

я есть приложение с несколькими потоками. Потоки НЕ разделяют ObjectContext (каждый поток имеет свой собственный - я знаю, что они не являются потокобезопасными).

Тем не менее, все потоки работают в рамках общей транзакции. Исходный поток создает TransactionScope, а каждый созданный им поток создает TransactionScope, используя DependentTransaction из Transaction в основном потоке.

Когда несколько запросов ObjectContext выполняются одновременно, я иногда (не всегда) получаю сообщение об ошибке:

System.Data.EntityException occurred
  Message=An error occurred while closing the provider connection. See the inner exception for details.

  InnerException: System.Transactions.TransactionException
       Message=The operation is not valid for the state of the transaction.
       Source=System.Transactions
       StackTrace:
            at System.Transactions.TransactionStatePSPEOperation.get_Status(InternalTransaction tx)
            at System.Transactions.TransactionInformation.get_Status()
            at System.Data.ProviderBase.DbConnectionInternal.CloseConnection(DbConnection owningObject, DbConnectionFactory connectionFactory)
            at System.Data.SqlClient.SqlInternalConnection.CloseConnection(DbConnection owningObject, DbConnectionFactory connectionFactory)
            at System.Data.SqlClient.SqlConnection.Close()
            at System.Data.EntityClient.EntityConnection.StoreCloseHelper()
       InnerException: 

Я только знаю, что они работают одновременно, потому что, когда я запускаю свои модульные тесты в режиме отладки, и появляется это исключение, если я смотрю на другие запущенные потоки, я всегда вижу, как минимум один другой поток останавливается при операции ObjectContext ,

Кроме того, после некоторого чтения я попытался добавитьmultipleactiveresultsets=False к моей строке подключения, и это не имеет значения.

Это ошибка в Entity Framework?

Ответы на вопрос(2)

Ваш ответ на вопрос