anonymous types are readonly!!
This was totally surprising when I learned in the usergroup meeting today that once you initialize an anonymous type you cannot change its properties after that. It is marked as read only. Following code does not compile.
In the above code, after declaring the anonymous type I try to change the property firstname but the compiler raises an error saying that the property is marked as read only. This is not the same behavior that you would expect when you are changing the property for anonymous type in VB.net. May be someone can explain why anonymous type's properties cannot be changed after initialization.