流程交易到Workflow Foundation 4.5

时间:2013-02-01 13:31:23

标签: transactions workflow-foundation-4 transactionscope

我有这个非常简单的工作流程:
Simple Workflow

大家都可以看到它包含一个简单的分配和一个sendresponse,都在接收事务范围内。

现在在消费者方面我有这么简单的代码:

    static void Main(string[] args)
    {            
        using (TransactionScope scope = new TransactionScope())
        {
            Transaction t = Transaction.Current;
            t.TransactionCompleted += t_TransactionCompleted;

            TransactedServiceRef.ServiceClient cli = new TransactedServiceRef.ServiceClient();
            string aux = cli.GetData(new TransactedServiceRef.GetData() { id = 1, value = 1 });                

            Console.WriteLine(aux);
            scope.Complete();

        }            
        Console.ReadLine();

    }

    static void t_TransactionCompleted(object sender, TransactionEventArgs e)
    {
        //POINT 1
    }

现在我的问题: 我不知道为什么但是在“POINT 1”中我的交易总是中止! 没有异常被抛出,没有错误,没有回滚也没有什么......它只是流产了......任何人都可以帮助我吗?

btw:我希望POINT 1中的状态是Commited ......

2 个答案:

答案 0 :(得分:1)

您的问题中是否包含任何WCF配置详细信息?您是否也使用了适当的绑定并启用了交易?

我前段时间对这个问题做过blog post。希望有所帮助。

答案 1 :(得分:0)

我检查了“PersistBeforeSend”...所以当我取消选中它时,一切都恢复到预期的状态......我不知道它为什么会起作用......它只是... ...