我面临一个奇怪的问题,我不确定代码发生了什么,它昨天工作得很好。 我在表中有数据,并使用下面的函数从DB中检索它。我正在使用My SQL。当应用程序启动时,数据获取正确,但是一旦我们几次点击DB进行某些跟踪,例如保存/更新/删除。它停止从DB获取记录,或者你可以说它停止与DB通信,但它正在构建连接。我已经证实了这一点。
以下是我的代码:
public List<AcademyTeamsEntity> GetAcademyTeams(int academyId)
{
using (IDbConnection db = new MySql.Data.MySqlClient.MySqlConnection(ClsConnectionString.connectionString))
{
string query = @"SELECT * FROM academyteams where AcademyId=" + academyId + " order by CategoryId asc ";
return db.Query<AcademyTeamsEntity>(query, commandType: System.Data.CommandType.Text).ToList();
}
}
请说明我犯的是什么错误。提前致谢。
答案 0 :(得分:0)
看起来像交易有问题。
也许事务级别设置为可序列化。它会锁定所有数据,直到完成,并且在使用保存/更新/删除方法发送少量请求后会出现死锁。
检查您的事务是否始终完成或在出现问题时回滚,以及在具有事务的方法中关闭所有连接和事务到db。