尝试连接并修改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
});
}
}
}
答案 0 :(得分:0)
我可以确认该修补程序有效。我使用mysql connector.net版本6.4.4让lightwitch使用MySQL。但是,当您建立连接并选择数据库时,您将收到以下错误:“提供程序未返回ProviderManifestToken字符串。”
要解决此问题,请单击连接属性窗口上的“高级”选项卡。向下滚动到安全部分,并为Persist Security Info选择true。
这允许实体框架查询表。
我用这个创建了一个测试应用程序并发布到我的计算机上,我也可以完成全面的操作!
万岁。
P.S。嵌套事务的修补程序位于:http://archive.msdn.microsoft.com/KB2534087