У меня есть 2 файла DTO, один из которых является подклассом другого. Поля на супер-класса являются следующие:Проблема Json в подклассе
[JsonProperty]
protected int financialFormatHeaderID;
[JsonProperty]
protected string financialFormatHeaderCode;
[JsonProperty]
protected string description = string.Empty;
[JsonProperty]
protected FinancialFormatPurpose purpose = FinancialFormatPurpose.Standard;
[JsonProperty]
protected IList<FinancialFormatDetailDto> details = new List<FinancialFormatDetailDto>();
[JsonProperty]
protected bool active = true;
Суб-класс имеет следующее:
public RecoveryFormatHeaderDto()
: base() {
this.purpose = FinancialFormatPurpose.Recovery;
}
[JsonProperty]
private bool isPerSquareArea;
Они оба имеют JSONObject (MemberSerialization.OptIn) и Сериализуемые атрибуты над именем класса (но под пространством имен).
Моя проблема заключается в том, что, когда я пытаюсь сохранить экземпляр суб-класса, я получаю следующее сообщение об ошибке:
Newtonsoft.Json.JsonSerializationException was unhandled by user code
Message=A member with the name 'financialFormatHeaderID' already exists on 'RecoveryFormatHeaderDto'. Use the JsonPropertyAttribute to specify another name.
Source=Newtonsoft.Json
Что здесь происходит? Как это исправить?
EDIT: сигнатуры класса являются следующие:
public class FinancialFormatHeaderDto
public class RecoveryFormatHeaderDto : FinancialFormatHeaderDto
Как выглядят подписи вашего класса? – StriplingWarrior