MVC 3: O gerenciador de transações MSDTC não pôde extrair a transação da origem

Estou usando o MVC 3 com entidades, agora eu usei a linha abaixo de códigos do meu controlador

<code>        using (var scope = new TransactionScope())
        {
            _myRepository.DeleteFM1(id);
            _myRepository.DeleteFM2(id, name);
            scope.Complete();
        }
</code>

e dentro do meuDeleteFM2 O método que é meu método definido na classe Entity é o seguinte:

<code>    public void DeleteFM2(int id, string name)
    {
        var data= _repositoryMD.Fetch().Where(mColl => mColl.Col1 == id);

        if (data!= null)
        {
                //insert here is giving some error MSDTC error !
                // here I prepare a message using the '**data**'
                _repositoryHistory.Insert(name, message, "FM2", "Delete", dateTime);


                _repositoryMD.Attach(data);
                _repositoryMD.Delete(data);
                _repositoryMD.SaveChanges();
            }
        }
    }
</code>

e eu tenho uma classe separada onde eu defini o método Insert como

<code>   public bool Insert(string realName, string logMessage, string tableName, string changeType, DateTime dateTime)
    {
        var history = new History
        {
            ModifiedBy = realName,
            ChangeType = changeType,
            DateModified = dateTime,
            LogMessage = logMessage,
            TableName = tableName
        };

        _repositoryHistory.Add(history);
        _repositoryHistory.SaveChanges();

        return true;
    }
</code>

Depois de inserir esta linha de código no método acima DeleteFM2

<code>      _repositoryHistory.Insert(name, message, "FM2", "Delete", dateTime);
</code>

Estou recebendo este erro, sem essa linha meu código funciona muito bem, eu usei essa linha em todos os meus outros métodos também, mesmo onde eu havia usado o escopo de transação, mas eu ainda não parecem entender o problema aqui. Por favor ajude. obrigado

O provedor subjacente falhou em Abrir.

System.Transactions.TransactionManagerCommunicationException: Falha na comunicação com o gerenciador de transações subjacente. ---> System.Runtime.InteropServices.COMException: O gerenciador de transações MSDTC não pôde extrair a transação do gerenciador de transação de origem devido a problemas de comunicação. Possíveis causas são: um firewall está presente e não tem uma exceção para o processo MSDTC, as duas máquinas não podem encontrar um ao outro por seus nomes NetBIOS, ou o suporte para transações de rede não está habilitado para um dos dois gerenciadores de transação. (Exceção de HRESULT: 0x8004D02B) em System.Transactions.Oletx.IDtcProxyShimFactory.ReceiveTransaction (UInt32 propgationTokenSize, Byte [] propgationToken, IntPtr managedIdentifier, Guid & transactionIdentifier, OletxTransactionIsolationLevel e isolationLevel, ITransactionShim & transactionShim) em System.Transactions.TransactionInterop.GetOletxTransactionFromTransmitterPropigationToken (Byte [] propagationToken) --- Fim do rastreamento de pilha de exceção interna --- em System.Transactions.TransactionInterop.GetOletxTransactionFromTransmitterPropigationToken (Byte [] propagationToken) em System.Transactions.TransactionStatePSPEOperation.PSPEPromote (InternalTransaction tx) em System.Transactions.TransactionStateDelegatedBase.EnterState (InternalTransaction tx) em System.Transactions.EnlistableStates.Promote (InternalTransaction tx) em System.Transactions.Transaction.Promote () em System.Transactions.TransactionInterop.ConvertToOletxTransaction (Transaction transaction) em System.Transactions.TransactionInte rop.GetExportCookie (transação Transaction, Byte [] paradeiro) em System.Data.SqlClient.SqlInternalConnection.GetTransactionCookie (transação Transaction, Byte [] whereAbouts) em System.Data.SqlClient.SqlInternalConnection.EnlistNonNull (Transaction tx) em System.Data. SqlClient.SqlInternalConnection.Enlist (Transaction tx) em System.Data.SqlClient.SqlInternalConnectionTds.Activate (Transaction transaction) em System.Data.ProviderBase.DbConnectionInternal.ActivateConnection (Transaction transaction) em System.Data.ProviderBase.DbConnectionPool.GetConnection (DbConnection owningObject em System.Data.ProviderBase.DbConnectionFactory.GetConnection (DbConnection owningConnection) em System.Data.ProviderBase.DbConnectionClosed.OpenConnection (DbConnection outerConnection, DbConnectionFactory connectionFactory) em System.Data.SqlClient.SqlConnection.Open () em System.Data.EntityClient .EntityConnection.OpenStoreConnectionIf (Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection ori ginalConnection, String exceptionCode, String tryptedOperation, Boolean & closeStoreConnectionOnFailure)

Minhas configurações do FireWall

questionAnswers(6)

yourAnswerToTheQuestion