我将asp.net core 2与MySQL5.6.27、dapper 1.50.2和dapper.contrib 1.50.0一起使用。尝试使用model执行基本插入操作时出错,但是如果在sql查询中使用plain insert,则操作成功。
这就是我得到的错误:
sql语法有错误;检查与您的mysql服务器版本相对应的手册,以了解在“where 1=0”(select null where 1=0)(select null where 1=0)(select null where 1=0)(select null at line 1)附近使用的正确语法
代码:
using (IDbConnection dbConnection = Connection)
{
dbConnection.Open();
var newUser = dbConnection.Insert(entity); // error on this line
}
模型类
public partial class Aspnetusers
{
[Key]
public int Id { get; set; }
public string UserName { get; set; }
public int AccessFailedCount { get; set; } = 0;
public string Email { get; set; }
public bool EmailConfirmed { get; set; } = false;
public bool IsActive { get; set; } = true;
public bool IsRootUser { get; set; } = false;
public bool LockoutEnabled { get; set; } = false;
public string PasswordHash { get; set; }
public bool PhoneNumberConfirmed { get; set; } = false;
public bool TwoFactorEnabled { get; set; } = false;
}
我尝试将dapper和dapper.contrib更新到1.50.5,但仍然是相同的错误。
请指出这里有什么不正确的地方。
你好,雅利安
1条答案
按热度按时间daupos2t1#
您遇到了dapper问题565:使用mysql server 5.6查询空列表失败。
dapper的sql生成(对于空枚举)与mysql server 5.6不兼容;您需要更新到MySQLServer5.7或更高版本,或者手工编写sql。