Я пытаюсь обновить значения элементов узла в документе XML на значения из базы данных. Сохраните документ. Затем отправьте документ через HTTP POST в c #. Код, который я до сих пор чувствую, почти есть, но он не совсем корректно работает. Может кто-нибудь помочь мне разобраться с этим на работе? Спасибо.
string xmlFile = Server.MapPath("~/Requests/Request_v24.xml");
XDocument xmlDoc = XDocument.Load(xmlFile);
var doc = XDocument.Parse(xmlDoc.ToString());
List<XElement> xElementList = doc.Descendants().ToList();
try
{
foreach(record in database){
foreach(XElement e in xElementList)
{
if (e.HasElements)
{
e.Element("PostalCode").Value = record.Zipcode;
e.Element("Weight").Value = record.Weight;
}
}
xmlDoc.Save(Server.MapPath("~/Requests/Request_v24.xml"));
}
}
catch (System.Xml.XmlException e)
{
Debug.WriteLine(e.Message);
}
XML:
"<RateRequest>
<Version>
<ServiceId>crs</ServiceId>
<Major>24</Major>
<Intermediate>0</Intermediate>
<Minor>0</Minor>
</Version>
<ReturnTransitAndCommit>1</ReturnTransitAndCommit>
<RequestedShipment>
<ShipTimestamp>2019-03-22T15:45:22.836Z</ShipTimestamp>
<DropoffType>REGULAR_PICKUP</DropoffType>
<ServiceType>FEDEX_GROUND</ServiceType>
<PackagingType>YOUR_PACKAGING</PackagingType>
<TotalWeight>
<Units>LB</Units>
<Value>25</Value>
</TotalWeight>
<PreferredCurrency>USD</PreferredCurrency>
<Shipper>
<Address>
<PostalCode>32809</PostalCode>
<CountryCode>US</CountryCode>
</Address>
</Shipper>
<Recipient>
<Address>
<PostalCode>33467</PostalCode>
<CountryCode>US</CountryCode>
</Address>
</Recipient>
<PackageCount>1</PackageCount>
<RequestedPackageLineItems>
<SequenceNumber>1</SequenceNumber>
<GroupPackageCount>1</GroupPackageCount>
<InsuredValue>
<Currency>USD</Currency>
<Amount>100.00</Amount>
</InsuredValue>
<Weight>
<Units>LB</Units>
<Value>25</Value>
</Weight>
<Dimensions>
<Length>12</Length>
<Width>12</Width>
<Height>12</Height>
<Units>IN</Units>
</Dimensions>
</RequestedPackageLineItems>
</RequestedShipment>
</RateRequest>"
Я получаю ошибку: ссылка на объект не установлена для экземпляра объекта.