locked
Dúvida Transaction RRS feed

  • Pergunta

  • Olá queria saber como posso passar uma transaction iniciada em uma camada para meu workflow, eu estou usando TransactionService mais lá sempre vejo que ele cria uma nova transaction

     TransactionOptions opts = new TransactionOptions();
                    opts.IsolationLevel = IsolationLevel.ReadCommitted;
                    opts.Timeout = TimeSpan.FromMinutes( 1 );
                   
                    using( TransactionScope scope = new TransactionScope( TransactionScopeOption.Required , opts ) )
                    {
                        List<InfractionWork> infractionWork = GetInfraction( _infractionID );
                        if( infractionWork.Count > 0 )
                        {
                            if( infractionWork[0].WorkflowID != Guid.Empty )
                            {
                                Engine.Instance.Execute( infractionWork[0] );
                                DeleteInfraction( infractionWork[0] );
                            }
                        }                  

                        scope.Complete();

                    }
                    return true;

    quarta-feira, 31 de março de 2010 14:17

Respostas

  • Pelo que eu vi acho que não da

    http://wiki.windowsworkflowfoundation.eu/default.aspx/WF/WorkflowTransactionServices.html

    The WF framework does not support the ability to bring your own transaction from the outside into a workflow instance

     

    Vou mudar minha regra e colocar no e colocar no commit do WorkflowEnvironment.WorkBatch.Add(""."");

    Se algúem souber alguma outra solução.

    quarta-feira, 31 de março de 2010 14:46

Todas as Respostas

  • Pelo que eu vi acho que não da

    http://wiki.windowsworkflowfoundation.eu/default.aspx/WF/WorkflowTransactionServices.html

    The WF framework does not support the ability to bring your own transaction from the outside into a workflow instance

     

    Vou mudar minha regra e colocar no e colocar no commit do WorkflowEnvironment.WorkBatch.Add(""."");

    Se algúem souber alguma outra solução.

    quarta-feira, 31 de março de 2010 14:46
  • Opa,

     

    Já pensou em utilizar o Compensation ?? http://msdn.microsoft.com/en-us/library/ms735874(VS.90).aspx

    Obs: Me lembra aquela musica, rebolation.. rs

    Abs.


    Nelson Borges - http://nelsonborgesjr.spaces.live.com/blog/ "Ao infinito e além.. "
    terça-feira, 5 de outubro de 2010 16:02