<< Back To All Blogs
Enumerating all attributes of an element and adding them to a dictionary using LINQ with Lambda Expressions
Thursday, May 14th, 2009
I have been confronted a number of times lately with the need to record all attributes of an XML element, especially when working with SharePoint XML where the attributes are simply too many to strongly-type
the resulting output.
This can be easily achieved while using LINQ along with a simple Lambda expression.
Without further ado, here is my resolution:
var lists = from list in doc.Descendants("MyElement")
Attributes = (from attribute in list.Attributes()
n => n.Name.LocalName, n => n.Value)
This will give you a resulting var of elements' XML attributes. This can than be enumerated like any other C# dictionary.
Very useful, and not very hard, but took me a few minutes to figure out nonetheless.
LINQin' Tom Out.
Reading a Microsoft Project file (mpp) in C#
Creating a reusable web client for PUT, POST, and DELETE in C#
Retrieving the SID of a user or group account using the Win32 SDK and C#
Creating an MD5 String Extension method in C#
SharePoint Web Services, .NET 3.5, and Authentication Issues
Currently no comments.
Add A Comment
Email Address: (not public, used to send notifications on further comments)
Enter the text above, except for the 1st and last character: