Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: XML LINQ VB.NET
Dear All,
 

I have my xml file with rootnode as "Base" and I have my attribute "Name" available in the root node itself. I need to find out my attribute value located in my root node. How could I proceed, please help me ASAP. For your reference I hereby providing you a sample.
 
<Baseclass ID="5" Name="Raj">

</Baseclass>
Posted 22-May-13 20:19pm
Edited 22-May-13 20:22pm
v2
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

Try this
XDocument xDoc = XDocument.Load("path to xml");
var TagIds = xDoc.Descendants()
                .Elements()
                .Where(e => 
                            e.HasAttributes && 
                            e.Name.LocalName.Equals("Baseclass") && 
                            e.Attribute("ID") != null)
                .Select(e => e.Attribute("ID").Value);
 

Hope this helps
  Permalink  
v2
Comments
Jameel Moideen at 23-May-13 1:33am
   
I have updated my answer..please try that
rahulaaditya at 24-May-13 9:50am
   
Many thanks to you Jameel for your help.
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

Dim tempPath As String = FolderBrowserDialog1.SelectedPath & "\" & ListBox1.Items(x).ToString
 
Dim xSid = From xattr In xDoc.Descendants("Baseclass") _
Select att = xattr.Attribute("Name").Value
sSID = xSid.ElementAt(0).ToString 'SID value
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Maciej Los 315
1 OriginalGriff 233
2 Aajmot Sk 224
3 Richard MacCutchan 220
4 Marcin Kozub 210
0 OriginalGriff 7,853
1 Sergey Alexandrovich Kryukov 7,107
2 DamithSL 5,604
3 Manas Bhardwaj 4,986
4 Maciej Los 4,790


Advertise | Privacy | Mobile
Web03 | 2.8.1411023.1 | Last Updated 24 May 2013
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100