Fra og med MongoDB v 3.2 kan du bruge bitsAllSet eller bitsAnySet alt efter hvad du søger efter.
Så med C# MongoDB Driver:
//Check single Flag as OP
collection.Find(Builders<MyEntity>.Filter.BitsAllSet(myEntity => myEntity.Flags, (long) MyFlags.AFlag));
//Check all multiple Flags
collection.Find(Builders<MyEntity>.Filter.BitsAllSet(myEntity => myEntity.Flags, (long) MyFlags.AFlag | MyFlags.BFlag));
//Check any multiple Flag
collection.Find(Builders<MyEntity>.Filter.BitsAnySet(myEntity => myEntity.Flags, (long) MyFlags.AFlag | MyFlags.BFlag));
Bemærk :Der er et åbent problem at bruge indekser på Bitwise-operationer. På MongoDB 4.2 bruger de dem stadig ikke, så vær opmærksom på, hvis du planlægger at bruge dem massivt (det var vi, og vi var nødt til at refaktorere alt bagefter).