私はLINQをよく理解していないと思います。私はやってみたいです:
foreach (MyObjetc myObject in myObjectCollection)
{
myObjet.MyProperty = newValue
}
コレクションのすべての要素のプロパティのすべての値を変更するだけです。
LINQ を使用すると、このようになりませんか?
myObjectCollection.Select(myObject => myObject.MyProperty = newValue)
うまくいきません。プロパティ値は変更されません。なんで?
編集:
ごめんなさい、皆さん。確かに、foreach は正しい方法です。しかし、私の場合、多くのコレクションで foreach を繰り返さなければならず、ループを繰り返したくありませんでした。それで、最後に、「Select」に似た「中間」ソリューション、「foreach」メソッドを見つけました。
myObjectCollection.ForEach(myObject => myObject.MyProperty = newValue)
とにかく、より単純なものほど明確ではないかもしれません:
foreach (MyObjetc myObject in myObjectCollection) myObjet.MyProperty = newValue;