Tipos anónimos en C #

// x is compiled as an int 
var x = 10;

// y is compiled as a string 
var y = "Hello";

// z is compiled as int[] 
var z = new[] { 0, 1, 2 };

pero

// ano is compiled as an anonymous type 
var ano = new { x1 = 10, y1 = "Hello" };

ano Las propiedades del objeto creadas son de solo lectura. Quiero averiguar por qué esas propiedades son de solo lectura. Se agradecen las sugerencias?

EDITAR:

var ano1 = new { x1 = 10, y1 = "Hello" };

var ano2 = new { x1 = 10, y1 = "Hello" };

¿Es que si el nuevo tipo anónimo tiene el mismo número y tipo de propiedades en el mismo orden, será del mismo tipo interno que el primero?

Respuestas a la pregunta(3)

Su respuesta a la pregunta