MyEnum
を指定すると、プロパティEnumValue
とIList<MyClass> list
を持つクラスは、ループを記述することなく、複数のリスト要素に列挙値が見つからないと判断する賢明なLINQ方法ですか?列挙型の各値が、LINQを使用して最大でも1つの要素の1つの要素にあることを確認しますか?
私は知っているが、それは現実世界のコードであり、私が書いているコードであり、恐ろしいことではないかと思ったのだろうか?例えば
:
foreach (var e in Enum.GetValues(typeof(MyEnum)))
Assert.IsTrue(list.Count(x => x.EnumValue == e) <= 1);
「ループを使用しない」と言うとき - 「コードにループを使用しない」という意味ですか?ループがどこかで実行されなければ、それはできません。単にあなたがそれを説明するのではなく、[mcve]を使ってそれを実演したら、その質問を理解する方が簡単であることに注意してください。 –
私はこの部分を理解できません: "enum値は複数のリスト要素で見つかりません" –
@JonSkeet _writing_を使わないとループがおそらく暗示されますが、明確な例を追加しました –