在C#中,我將標記枚舉值作爲字節存儲在數據庫中。例如,對於下面的標誌枚舉:C# - 如何檢查字節值是否與指定標誌枚舉中的任何標誌匹配?
[Flags]
public enum Options
{
None = 0,
First = 1,
Second = 2,
Third = 4
}
如果我想記錄「第一」和「二」,我這個在「選項」中的一個記錄的字段保存爲「3」字節數據庫。
因此,在使用LINQ的時候,我怎麼能檢查是否在數據庫中的值相匹配的爲「選項」枚舉傳遞參數,像這樣的僞代碼選項「任何」:
public static Something(Options optionsToMatch)
{
db.MyEntity.Get(a => a.options contains any of the options in optionsToMatch);
這是爲什麼downvoted? –
「沒有任何選項」與「沒有'沒有」相同嗎? – Sehnsucht
不,我的意思是,如果字節(a.options)代表在'optionsToMatch'中傳遞的任何選項,那麼它應該是一個匹配 –