无法在希腊语的 sqlite-net 查询中处理字符串



我想根据用户键入的内容从sqlite数据库返回一些字符串。比较必须不区分大小写。虽然我的查询适用于英语数据,但当所有字母都是大写字母时,它仅适用于希腊语。所以我想 ToUpper(( 方法在查询和代码中的表现不同。

我已经将问题缩小到 ToUpper(( 方法,因为当我在查询之外运行它到过滤器字符串时,它对大写字母表现很好。

var filterString = filter.Designation?.ToUpper();
var sites = from c in MemoryService.DbContext.db.Table<Site>()
where filterString == null || c.Designation.ToUpper().Contains(filterString)

我认为您需要使用特定于文化的比较,请在此处查看这篇文章。 比较带有非英文字符的字符串?

这假设您知道比较的字符串将使用哪种语言键入。

最新更新