我将BLToolkit与mysql一起使用,当我尝试向表中插入记录时,我收到这样的查询:
INSERT INTO `P`
(
`Name`
)
VALUES
(
\0Name
);
正如您所看到的,这不是最好的mysql查询。
类:
public class P
{
[PrimaryKey]
[Identity]
public int? ID { get; set; }
public string Name { get; set; }
}
插入代码:
var p = new P();
p.Name = "asdf";
p.ID = (int) db.InsertWithIdentity(p);
你知道吗,发生了什么事?
答案 0 :(得分:0)
我已经浏览了所有的BLToolkit代码,你知道我发现了什么吗?
该错误发生在我的MySqlDataProvider中,我使用了旧版本......
这是正确的:https://github.com/igor-tkachev/bltoolkit/blob/master/Source/Data/DataProvider/MySqlDataProvider.cs
我的错误在这里:
public static char ParameterSymbol
{
get { return MySqlSqlProvider.ParameterSymbol; }
set { MySqlSqlProvider.ParameterSymbol = value; }
}
我没有设置MySqlSqlProvider.ParameterSymbol
属性,我的代码只是在本地存储了值...