【发布时间】:2017-10-05 02:55:37
【问题描述】:
我在 WPF 应用程序中使用 Sqlite+EF,当我在数据库中搜索包含非英文字母的文本时,我得到了我期望的行 + 另一行不知道为什么会出现。
我的做法是:dbContext.MyTable.Where(w => w.Name.Contains(someNonEnglishTextHere))
- DB 是 Sqlite3
- 编码为 UTF-8
-
MyTable中的列Name具有Collate作为NOCASE - 我正在使用 EF6
当询问由 EF 形成的 sql 查询时,Contains 替换为 CHARINDEX 而不是 LIKE,有什么办法可以强制 EF 使用 LIKE 吗?如果我能做到,也许这就是解决方案。
【问题讨论】:
-
你解决了吗?我对西里尔语有同样的问题...
-
从来没有解决过,在内存中搜索,这样我就可以摆脱在数据库中的搜索了。
标签: c# wpf sqlite entity-framework-6