Hi Friends,
I am reading the XML file using Linq.
I have XML as below :
="1.0"="utf-8"
<results xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="TCore TResultsSchema.xsd" xmlns="TCore">
<SMS>
<message>
<msgStatus>Read</msgStatus>
<msgcenterno>8613800100500</msgcenterno>
<number>8613810162499</number>
<dateTime>2011-11-22 15:45:54</dateTime>
<text>I'm going to purchase a BMW</text>
</message>
<deleted />
<message>
<msgStatus>Read</msgStatus>
<msgcenterno>8613800100500</msgcenterno>
<number>8613810162499</number>
<dateTime>2011-11-22 15:46:38</dateTime>
<text>What do want for me</text>
</message>
<deleted />
I want to fill all that messages into the Generic list. So i had done code like below.
XDocument xmlDoc = XDocument.Load(new System.IO.StreamReader(strWorkingFolderPath + "\\physicalResults.xml"));
List<SMS> lstsms = new List<SMS>();
var childQuery = from child in xmlDoc.Element("results")
.Element("SMS").Descendants("message")
select child;
foreach (XElement el in childQuery)
{
SMS s = new SMS();
s.msgStatus = el.Attribute("msgStatus").Value;
s.msgcenterno = el.Attribute("msgcenterno").Value;
s.number = el.Attribute("number").Value;
s.dateTime = el.Attribute("dateTime").Value;
s.text = el.Attribute("text").Value;
lstsms.Add(s);
}
I am getting error 'object reference not set to an instance of an object'.
Can any one please tell me where is the problem in this query?
Thank,
Viprat