我将此文件命名为1_method
public class DerivedClass
{
[DataMember(Name="1_method")]
public virtual string FirstMethod { get; protected set; }
}
当我反序列化json时,我需要它可以映射到各种名称 我怎样才能实现类似下面的伪代码?
public class DerivedClass
{
[DataMember(Name="1_method",Name="2_method")]
public virtual string FirstMethod { get; protected set; }
}
或者像这样:
public class DerivedClass
{
[DataMember(Name="1_method")]
[DataMember(Name="2_method")]
public virtual string FirstMethod { get; protected set; }
}
答案 0 :(得分:7)
据我所知,你不能有多个datamember属性的名字,你只需要使用相同的内部变量进行存储。
public class DerivedClass
{
string _internal;
[DataMember(Name="1_method")]
public virtual string FirstMethod {
get{
return this._internal;
}
protected set {
this._internal = value;
}
}
[DataMember(Name="2_method")]
public virtual string SecondMethod {
get{
return this._internal;
}
protected set {
this._internal = value;
}
}
}