我的C#控制台应用程序:
1:
string CE_ParentName_ = CEReader5[0].ToString(); // get string with lithuanian letters for example "Konsolės".
如果我使用Console.WriteLine()
,我会在控制台中获得正确的输出。
2:
readname.CommandText = "SELECT [ID] FROM [Net7].[dbo].[GroupFilter] WHERE
[GroupFilterName]='" + CE_ParentName_ + "'"; // I need to find records in my DB with name of that string (1 possible option)
3:
if (NameReader.Read()) { idd = NameReader[0].ToString(); } // if i get any results ar no.2 i need to read them
关键是如果string包含立陶宛字母,则no.2返回零结果。如果字符串是没有立陶宛字母 - 一切都很完美。尝试了一切,你是我最后的希望人。
答案 0 :(得分:0)
立陶宛字符是多字节的吗? (比如日语) GroupFilterName是NVARCHAR还是VARCHAR?如果它是NVARCHAR,也许您需要将N放在字符串前面。
例如
readname.CommandText = "SELECT [ID] FROM [Net7].[dbo].[GroupFilter] WHERE
[GroupFilterName]=N'" + CE_ParentName_ + "'";
请参阅asawyer关于避免注射攻击的评论。