【发布时间】:2013-04-07 14:42:23
【问题描述】:
我需要在enum DaysOfTheWeek 中查找由List<int> daysId 过滤的值并返回过滤后的枚举
我的枚举:
[Flags]
public enum DaysOfTheWeek
{
Sunday = 1,
Monday = 2,
Tuesday = 4,
Wednesday = 8,
Thursday = 16,
Friday = 32,
Saturday = 64,
AllDays = 127,
}
-
var allValues = Enum.GetValues(typeof(DaysOfTheWeek));
我的整数列表:
List<int> daysId = new List<int> {1,3};
【问题讨论】:
-
那么问题是什么?
-
当我们制作
[Flags] enum时,我们通常使用0x001、0x002、0x004、0x008、0x010等。它更容易使用(尤其是当你有很多选项。另外,AllDays = Sunday | Monday | [...]会更好,因为如果您想添加或删除天数(或更改现有天数的值),您不需要调整它的值。 -
过滤器是什么,预期的结果是什么?它是包含还是排除过滤器?还不够清楚。