Home
Blog
Contact
Mailing List
Software
Active Directory Products
Object Compare
Permission Compare
IPhone Products
Calls To Calendar
SMS To CSV
SMS To Gmail
Voicemail To Gmail
Sites
How Long For Me
SaveMySerials
Blog
Twitter
|
<< 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")
select
{
Attributes = (from attribute in list.Attributes()
select attribute).ToDictionary(
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.
Tags
CSharp
LINQ
Related Blogs
Reading an XML file using LINQ
A quick way to find C++ method signatures for C# Interop
Determining if a computer is a laptop or desktop in C#
Copy a DLL from the GAC
Reading Digital Signatures from InfoPath Forms in MOSS 2007 and WSS 3.0 Workflow
Comments
Currently no comments.
Add A Comment
Name:
URL:
Email Address: (not public, used to send notifications on further comments)
Comments:

Enter the text above, except for the 1st and last character:
|