【发布时间】:2015-08-11 09:18:07
【问题描述】:
我在使用 OData WebAPI 并查询 EnumerableQuery(我在其上调用 .AsQueryable() 的列表)时遇到问题。我有一个实体集,一个带有 Get 方法的控制器,它返回 IQueryable。当我查询实体集并使用此 $filter
$filter=SomeStringProp eq 'SomeValue'
我只得到SomeStringProp 等于'SomeValue' 的字母和大小写的实体。我想以某种方式强制 OData 对所有字符串使用不区分大小写的比较器 - 即使是这样的函数调用
$filter=contains(SomeStringProp, 'apple')
我需要 OData 来返回 SomeStringProp 等于 'APPLE'、'PineApple' 和 'AppleSauce' 的实体
一些附加信息:
- 数据库与此无关;如前所述,该集合在内存中
- 在 OData 查询中使用 tolower() 只是一种解决方法,因此不能解决问题
【问题讨论】:
标签: asp.net-web-api case-sensitive asp.net-web-api-odata asqueryable