0

我将 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);

你知道吗,这是怎么回事?

4

1 回答 1

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属性,我的代码只是将值存储在本地......

于 2015-08-01T15:01:25.500 回答