Я работаю над приложением .NET (VB 2008), которое получает все свои данные из веб-приложения Django.
Я использую Linq-to-XML и Linq-to-objects в приложении.
Один вызов API дает мне данные XML в следующем формате, который я загружаю в XDocument.
<django-objects version="1.0">
<object pk="1" model="app.person">
<field type="CharField" name="reference_num">001</field>
<field to="app.office" name="office" rel="ManyToOneRel">2</field>
<field type="DateField" name="date">2008-09-03</field>
<field type="CharField" name="surname"></field>
<field type="CharField" name="name">Sandra</field>
<field type="DateField" name="birthdate">1988-11-03</field>
<field type="CharField" name="sex">F</field>
<field type="CharField" name="marital_status">S</field>
<field type="TextField" name="special_interests">Biking</field>
<field type="CharField" name="identity_proof"></field>
<field type="CharField" name="identity_proof_number"></field>
<field type="BooleanField" name="is_active">0</field>
<field type="DateTimeField" name="created">2008-09-03 12:46:39</field>
<field type="DateTimeField" name="modified">2008-09-03 12:46:39</field>
<field type="DateField" name="important_date"><None></None></field>
<field type="DateField" name="archive_date"><None></None></field>
<field type="CharField" name="process_status"></field>
<field type="FileField" name="image"></field>
<field to="auth.user" name="self_user" rel="OneToOneRel">13</field>
</object>
<object pk="2" model="app.person">
.
<!-- more similar xml //-->
.
</object>
.
.
.
</django-objects>
В этом формате вызов API возвращает несколько <object>
элементов, подобных этому. Этот XML содержит <None></None>
для представления нулевых значений, например, внизу в блоке кода выше, в <field type="DateField" name="archive_date"><None></None></field>
. <None></None>
говорит мне, что в базе данных это поле имеет нулевое значение. Другие элементы <object>
в этом XDocument могут иметь действительные даты или <None></None>
. Я хотел бы сделать следующее: для всех <object>
, где <field type="DateField" name="archive_date">
содержит <None></None>
, заменить это нулевое представление на 1899-01-01.
Как мне добиться этого?
Спасибо.