LightSwitch + MySQL错误:不支持嵌套事务

时间:2011-09-06 18:43:27

标签: mysql visual-studio-lightswitch

尝试连接并修改MySQL表中的现有数据。读取工作正常,但在尝试保存更改时,会发生以下错误。

在提供程序连接上启动事务时发生错误。有关详细信息,请参阅内部异常 内部异常消息: 不支持嵌套事务。

使用MySQL Connector Net 6.4.3

答案

我找到了一个适合我案例的答案。将以下代码添加到数据源代码

using System.Transactions;

namespace LightSwitchApplication
{
    public partial class <ChangeThisToYourClassName>
    {
        private TransactionScope tx;

        partial void SaveChanges_Executed()
        {
            tx.Complete();
        }

        partial void SaveChanges_Executing()
        {
            tx = new TransactionScope(TransactionScopeOption.Required, 
                  new TransactionOptions { 
                      IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
                  });
        } 
    }
}

1 个答案:

答案 0 :(得分:0)

我可以确认该修补程序有效。我使用mysql connector.net版本6.4.4让lightwitch使用MySQL。但是,当您建立连接并选择数据库时,您将收到以下错误:“提供程序未返回ProviderManifestToken字符串。”

要解决此问题,请单击连接属性窗口上的“高级”选项卡。向下滚动到安全部分,并为Persist Security Info选择true。

这允许实体框架查询表。

我用这个创建了一个测试应用程序并发布到我的计算机上,我也可以完成全面的操作!

万岁。

P.S。嵌套事务的修补程序位于:http://archive.msdn.microsoft.com/KB2534087