A DataContractSerializer
will happily deserialize this class, including the readonly field:
[DataContract]
public class A
{
public A(int rof) => Rof = rof;
[DataMember]
private readonly int Rof;
}
How does it do that? It has a reputation for being fast so I assume it doesn't use FieldInfo.SetValue()
, does it?
Expression.Assign()
doesn't seem to work, nor does emitting Stfld
.
Aucun commentaire:
Enregistrer un commentaire