gpt4 book ai didi

c# - 不支持 EF6 嵌套事务

转载 作者:行者123 更新时间:2023-11-29 00:02:40 24 4
gpt4 key购买 nike

我正在尝试为一个表做一个简单的数据库插入,插入和连接工作正常。只有当输入错误数据出现异常时才会出现问题。

这是我的代码:(使用 MySql 和 EF6)

using (MaintenanceDB db = new MaintenanceDB())
{
try
{
employee employee = new employee
{
ID = idTBA.textBox.Text,
EName = enTBA.textBox.Text,
AName = anTBA.textBox.Text,
CareerCode = careerCodeCBA.comboBox.SelectedItem.ToString(),
Specialization = specTBA.textBox.Text,
Mobile = mobileTBA.textBox.Text,
Telephone = teleTBA.textBox.Text,
Email = emailTBA.textBox.Text
};
db.employees.Add(employee);
db.SaveChanges();
}
catch (DbUpdateException exception)
{
MessageBox.Show(exception.InnerException.InnerException.Message);
}
catch (EntityException exception)
{
MessageBox.Show(exception.InnerException.Message);
}
}

所以如果数据输入正确,一切都很顺利,但是如果我输入重复的 ID 例如第一次它会进入第一个 catch block 并告诉我有一个重复的,在这一点上有问题,它似乎这里的连接没有关闭(尽管使用 finally 和 dispose on db),下次我点击保存按钮时出现错误“不支持嵌套事务”,然后数据库关闭,我可以输入新的数据!

我尝试手动打开连接或启动事务并手动关闭它,正如我在此处的几篇文章中发现的那样,但似乎无法解决问题

最佳答案

好像a mysql bug...., #71502

[27 Feb 15:54] Raif Atef

This bug is due to a bug in the MySqlTransaction class.

关于c# - 不支持 EF6 嵌套事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29021971/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com