У меня есть собственный класс Fraction, который я использую на протяжении всего проекта.Все просто, он состоит из одного конструктора, принимает два целых и сохраняет их.Я хотел бы использовать DataContractSerializer для сериализации моих объектов, используемых в моем проекте, некоторые из которых включают в себя фракции в качестве полей.В идеале я хотел бы иметь возможность сериализовать такие объекты, как это:
<Object>
...
<Frac>1/2</Frac> // "1/2" would get converted back into a Fraction on deserialization.
...
</Object>
В противоположность этому:
<Object>
...
<Frac>
<Numerator>1</Numerator>
<Denominator>2</Denominator>
</Frac>
...
</Object>
Есть ли способ сделать это, используяDataContracts?
Я хотел бы сделать это, потому что я планирую сделать файлы XML доступными для редактирования пользователем (я использую их в качестве входных данных для музыкальной игры, и они, по сути, действуют как блокноты)и хотят, чтобы обозначение было как можно более кратким для конечного пользователя, чтобы им не приходилось иметь дело с таким количеством стен текста.
РЕДАКТИРОВАТЬ : Я также должен отметить, чтоВ настоящее время мой класс Fraction неизменен (все поля readonly
), поэтому невозможно изменить состояние существующей фракции.Впрочем, возвращать новый объект Fraction было бы нормально.