Home
Blog
Software
Contact
Mailing List
IPhone Products
SMS To Gmail
Voicemail To Gmail
Calls To Calendar
Other Products
TiffWizard
Sites
SaveMySerials
How Long For Me
DocuTerminal
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
Generic Method for Loading Interfaces in C# (For a Plugin System)
Impersonating a user in ASP.NET
Code Analysis with NDepend V3
Enumerating the values of an enum in C#
A quick way to find C++ method signatures for C# Interop
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:
|