1
我有一個包含記錄等一個XML文件 -更新XML文件<T>
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCLocation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CLocation>
<CId>5726</CId>
<Long>0</Long>
<Lat>0</Lat>
<Status>Pending</Status>
</CLocation>
<CLocation>
<CId>5736</CId>
<Long>0</Long>
<Lat>0</Lat>
<Status>Processed</Status>
</CLocation>
</ArrayOfCLocation>
我把這些記錄成列表, -
XDocument xDocument = XDocument.Load(filePath);
List<T> list = xDocument.Descendants("CLocation")
.Select(c => (new T()
{
CId = Convert.ToInt32(c.Descendants("CId").FirstOrDefault().Value),
Lat = Convert.ToDouble(c.Descendants("Lat").FirstOrDefault().Value),
Long = Convert.ToDouble(c.Descendants("Long").FirstOrDefault().Value),
Status = (Status)Enum.Parse(typeof(Status), c.Descendants("Status").FirstOrDefault().Value)
}))
.Where(c => c.Status == Status.Pending)
.Take(listCount)
.ToList();
現在,我更新T對象(設置它們的緯度/日誌字段)在上述集合 和處理這些對象後,我想要將這些記錄更新回XML文件。
任何人都可以請指導我一個有效的解決方案,我該如何將這些對象更新回XML文件。
謝謝!
是多少效率對你很重要?你打算處理巨大的XML文件嗎?或者你的意思只是可讀和簡潔的代碼? – svick
好吧,我其實是指所有這些:-)雖然現在XML文件將擁有500個這樣的CLocation元素,但未來可能會跳到1000。而且,簡潔的代碼總是一個加號:-) – iniki