gpt4 book ai didi

c# - 为什么 BLToolkit 在生成的查询中插入\0 而不是 '@' 符号?

转载 作者:行者123 更新时间:2023-11-29 22:10:10 25 4
gpt4 key购买 nike

我将 BLToolkit 与 mysql 结合使用,当我尝试将记录插入表中时,我收到如下查询:

INSERT INTO `P`
(
`Name`
)
VALUES
(
\0Name
);

如您所见,这不是最好的 mysql 查询。

类(class):

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

你知道发生了什么吗?

最佳答案

我已经浏览了所有 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 属性,我的代码只是在本地存储了该值...

关于c# - 为什么 BLToolkit 在生成的查询中插入\0 而不是 '@' 符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31756125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com