我有一个枚举:
[Flags]
public enum EmailType
{
PasswordRecovery = 1,
Activation = 2,
SendTicket = 4
}
例如,在一个表中,我们的值等于 3,这意味着 - PasswordRecovery
, Activation
。这是我的查询:
var emailType = EmailType.PasswordRecovery;
return Database.EmailSettings.FirstOrDefault(es => es.EmailType == (int)emailType);
当然这个查询不能正常工作:3 == 1 => false
. 如何正确过滤?
谢谢。
更新:
我正在使用Flags
属性,因为还有一个使用 XAF(devexpress 框架)编写的应用程序,并且我在 UI 中有一个需要Flags
属性的功能。