新しいC#7.0 ValueTuplesを見て、Anonymous Types
を完全に置き換えるかどうか疑問に思っています。 ValueTuples
は構造体であるため、クラスであるAnonymous Types
とは少し異なる動作をすることを理解しています。ただし、ValueTuple
よりもAnonymous Type
を使用する方が望ましいユースケースは見当たりません。
C#7.0でValueTuples
を使用するよりもAnonymous Type
を使用するほうが有利なユースケースはありますか?
匿名型は不変ですが、タプルはそうではありません。これは、匿名型がプロパティを公開し、タプルがフィールドを公開するという事実に反映されています。ほとんどの場合、データバインディングにはプロパティが必要です。
既存のコードの多くは参照型でのみ機能し、値型では機能しません。特に頭に浮かぶのは、Entity Frameworkの予測です。値型への予測は実装されていません。