如何在 OData 中测试位
How to test bit in OData
OData 不包含任何位操作运算符。
有没有办法创建一个等价于
的$filter
column & mask = mask
column & mask = 0
使用可用的 odata 运算符?
加、减、div、乘、mod、负、圆、底、顶
在我的例子中mask
只能包含一位
我的一个想法是声明一个通用的 "flags" 枚举(例如 Bits.Bit1、Bits.Bit2)然后使用 cast
+ has
但不知道是否它有效。
无法通过 OData v4 接口测试位 on/off 的整数。
A flags
枚举工作正常,但不能将整数转换为枚举。 IE。您必须将该列公开为元数据中的枚举。
如果您只需要检查实体枚举属性是否包含任何 [Flags] 值,则可以使用 'has' 运算符。
OData 不包含任何位操作运算符。
有没有办法创建一个等价于
的$filtercolumn & mask = mask
column & mask = 0
使用可用的 odata 运算符? 加、减、div、乘、mod、负、圆、底、顶
在我的例子中mask
只能包含一位
我的一个想法是声明一个通用的 "flags" 枚举(例如 Bits.Bit1、Bits.Bit2)然后使用 cast
+ has
但不知道是否它有效。
无法通过 OData v4 接口测试位 on/off 的整数。
A flags
枚举工作正常,但不能将整数转换为枚举。 IE。您必须将该列公开为元数据中的枚举。
如果您只需要检查实体枚举属性是否包含任何 [Flags] 值,则可以使用 'has' 运算符。