有Person类结构如下
public class Person
{
[IgnoreDataMember]
public string Name { get; set; }
[DataMember]
public int Age{ get; set; }
[DataMember]
public int Weight{ get; set; }
}
现在有个老王如下
var 老王 = new Person{ Name ="老王" ,Age =44, Weight = 130};
然后通讯过来反序列化一个 5年后的老王 由于Name是IgnoreDataMember所以得到空值null
五年后老王信息
{ Name =null, Age = 49, Weight = 140}
如果直接引用 老王= 五年后的老王 那么意味着 Name被覆盖了变成了没有名字的人 所以手动设置属性
老王.Age = 五年后老王.Age
老王.Weight = 五年后老王.Weight
这样目前满足功能需求了,但是 现在要扩增老王的属性了,属性一多 逐个赋值的话 代码量上去了。
有啥办法可以根据类的序列化特性 一下子把DataMemer的属性set到目标对象而同时过滤掉IgnoreDataMember呢?
仅有50分了 全部压上了,有经验的C 友们支支招吧谢谢了。