En C#, les propriétés des types anonymes sont en lecture seule:
var person = new { Surname = "Smith", OtherNames = "John" };
person.Surname = "Johnson"; // ERROR: .Surname is read-only
Bien sûr, je peux déclarer une vraie classe si je veux écriture de propriétés ou de champs, mais peu importe, quel est le raisonnement derrière cette décision de conception pour que les propriétés en lecture seule?