Sign In| Join
Get Help:Ask a Question in our Forums|Report a Bug|More Help Resources
Last post Mar 12, 2011 03:38 PM by drakonoffnet
Member
31 Points
23 Posts
Mar 12, 2011 03:38 PM|LINK
in the discussion I explained how to parse XML simple version but the task more difficult.
Example:
<?xml version='1.0' encoding='UTF-8'?> <site version="2.1"> <users id="644"> <id>644</id> <username>Jon</username> <useremail>Jon@email.com</useremail> <info type="stat"> <post type="web">2</post> <rate type="rate">24</rate> <login start="2011-03-02" ends="2011-03-11"> <in time="in">11.10</in> <out time="out">15.00</out> </login> </info> </users> </site>
wrote code for example:
@using System.Xml.Linq @{ Page.Title = "Title goes here"; //Layout = "Your Layout Page goes here"; XDocument doc = XDocument.Load(response.GetResponseStream()); // new #1 var query = doc.Element("site").Descendants("users") .Select(e => new { ID = e.Element("id").Value, UserName = e.Element("username").Value, UserEmail = e.Element("useremail").Value }).ToList(); // new #2 var query2 = doc.Element("site").Descendants("users").Descendants("info").Select(b => new { Post = b.Element("post").Value, PostT = b.Element("post").Attribute("type").Value, Rate = b.Element("rate").Value, RateT = b.Element("rate").Attribute("type").Value, }).ToList(); } <div> @foreach (var item in query) { @item.ID<br /> @item.UserName<br /> @item.UserEmail<br /> } @foreach (var item1 in query2) { @item1.Post<br /> @item1.PostT<br /> @item1.Rate<br /> @item1.RateT } </div>
But the second block of variable (# new2) when running constantly swears not used "new". But it's worth.
The second block, I'm trying to choose a different nesting since . How to solve this problem?
or how to properly establish parameters for the query to select XML data?
linq
drakonoffnet
Member
31 Points
23 Posts
parsing XML part 2 Help!
Mar 12, 2011 03:38 PM|LINK
in the discussion I explained how to parse XML simple version but the task more difficult.
Example:
<?xml version='1.0' encoding='UTF-8'?> <site version="2.1"> <users id="644"> <id>644</id> <username>Jon</username> <useremail>Jon@email.com</useremail> <info type="stat"> <post type="web">2</post> <rate type="rate">24</rate> <login start="2011-03-02" ends="2011-03-11"> <in time="in">11.10</in> <out time="out">15.00</out> </login> </info> </users> </site>wrote code for example:
@using System.Xml.Linq @{ Page.Title = "Title goes here"; //Layout = "Your Layout Page goes here"; XDocument doc = XDocument.Load(response.GetResponseStream()); // new #1 var query = doc.Element("site").Descendants("users") .Select(e => new { ID = e.Element("id").Value, UserName = e.Element("username").Value, UserEmail = e.Element("useremail").Value }).ToList(); // new #2 var query2 = doc.Element("site").Descendants("users").Descendants("info").Select(b => new { Post = b.Element("post").Value, PostT = b.Element("post").Attribute("type").Value, Rate = b.Element("rate").Value, RateT = b.Element("rate").Attribute("type").Value, }).ToList(); } <div> @foreach (var item in query) { @item.ID<br /> @item.UserName<br /> @item.UserEmail<br /> } @foreach (var item1 in query2) { @item1.Post<br /> @item1.PostT<br /> @item1.Rate<br /> @item1.RateT } </div>But the second block of variable (# new2) when running constantly swears not used "new". But it's worth.
The second block, I'm trying to choose a different nesting since . How to solve this problem?
or how to properly establish parameters for the query to select XML data?
linq