我面临着一个奇怪的问题,我不知道代码发生了什么,它昨天工作得很好。我有表中的数据,并使用下面的函数从数据库检索它。我正在使用sql。当应用程序启动时,数据获取正确,但是一旦我们对数据库进行了几次操作,比如save/update/delete。它停止从数据库获取记录,或者你可以说它停止了与数据库的通信,但是它正在建立连接。我已经证实了。
下面是我的代码:
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();
}
}
请说明我犯了什么错误。提前谢谢。
1条答案
按热度按时间qoefvg9y1#
看起来交易有问题。
可能事务级别设置为可序列化。它会锁定所有数据直到完成,并且在使用save/update/delete方法发送少量请求后会出现死锁。
检查事务是否总是完成,或者在出现错误时回滚,以及是否在带有事务的方法中关闭与db的所有连接和事务。