मुझे पता है कि गुणों की enum सूची के माध्यम से कैसे लूप करना है, लेकिन मैं सभी "चयनित" enum गुणों के माध्यम से कैसे लूप होगा? उदाहरण के लिए, यदि public enum Foo { Prop1; Prop2; Prop3 }
के विरुद्ध Prop1 | Prop2
किया गया, तो मैं इसे कैसे प्राप्त करूं?"चयनित" एनम मूल्यों के माध्यम से लूप?
var values = Enum.GetValues(typeof(FileStatus)).Cast<FileStatus>();
foreach (var value in values)
{
}
यह सब enum गुण के माध्यम से लूप होता है, लेकिन मैं करने के लिए लूप केवल जो कि गया "चयनित" करना चाहते हैं:
यह वही है मैं अब है।
अद्यतन: [Flags]
विशेषता सेट की गई थी।
अद्यतन 2: enum में बड़ी संख्या में गुण होते हैं, मैं एक एकल संपत्ति जांच/हार्डकोड नहीं कर सकता/सकती हूं, इसके बजाय मैं उनमें से प्रत्येक के माध्यम से गतिशील रूप से लूप करना चाहता हूं और जांच सकता हूं कि मेरा enum उदाहरण Bar
शामिल है या नहीं लूप आइटम सेट।
आप enum पर FlagsAttribute छड़ी किया? – scottheckel
@Hexxagonal: कोई फर्क नहीं पड़ता। हालांकि, स्पष्ट रूप से मूल्यों को असाइन करना बहुत मायने रखता है। –
@Hexxagonal यह वास्तव में किसी भी चीज़ से अधिक वैकल्पिक है। Enums दो की शक्ति हो सकता है या नहीं। झंडे को चाहे या नहीं। सेट * चाहिए * चाहिए, लेकिन वास्तव में यह नहीं है। – Servy