.net column
.NET開発者のためのブログメディア

【C#・LINQ】LINQ to XMLを使ったXMLのデータ操作

 
【C#・LINQ】LINQ to XMLを使ったXMLのデータ操作
基本情報技術者試験の試験対策はこちら>>

.NET Framework 3.5より搭載されたLINQ機能は、多くのC#の開発現場で活用されるようになりました。統一的な手法でデータに問い合わせができる機能で、LINQの種類も豊富です。その中でも、XMLデータに対して処理を行うLINQ to XMLについて、この記事で確認していきたいと思います。

PG
LINQ to XMLって積極的に利用していくべき機能なのでしょうか?
PM
確かにC#でXMLに問い合わせする方法はいくつか存在します。しかし、LINQ to XMLを活用して処理を実装することで、より簡潔にソースコードを記述することができますので、利用していくことをおすすめしますね。

LINQ to XMLでできること

.NET Frameworkが提供する統合言語クエリのひとつの機能であるLINQ to XMLは、その名のとおりXMLファイルに対して問い合わせを行うことが可能です。

LINQ to XMLを使用することで、検索条件などを指定してXMLファイルの要素からデータの抽出を行うことができますし、C#で編集したデータをXMLファイルに出力することもできます。データベースに問い合わせるのと同様の手法でXMLファイルとやり取りできることは、開発者にとってありがたい機能であるといえるでしょう。

C#でLINQ to XMLを使ってデータの抽出サンプルコード

ここでは実際に、LINQ to XMLを利用してXMLファイルへの問い合わせを行うコーディングのサンプルを紹介します。今回の開発環境には、Visual Studio Community 2017を使用します。
C#でLINQ to XMLを利用するには、System.Xml.Linqをusingする必要があります。これを忘れてしまうと、いつまでたってもコンパイルエラーになりますので注意しましょう。

XMLファイルからデータの抽出を行うので、まずは使用するXMLファイルを作成します。

次に実際にLINQ to XMLを利用して、上記で作成したテストXMLファイルの要素を抽出します。ここでは、Descendantsメソッドを利用します。

実行画面
ボタン押下で、ラベルに「Sibuya」を表示させます。
ボタンの表示

実行結果
Sibuyaの表示

PG
「LINQ to XML」っていうくらいですから、もっと難しいかと思っていましたが、簡単にコーディングできるのですね。
PM
そうですね。LINQは慣れるまで多少の時間が必要かもしれません。しかし、慣れると本当に使い勝手の良い機能です。統一的な手法でデータベースやXMLに問い合わせすることができますので、ソースも簡潔にまとめることが可能です。早めに使い方を理解することをおすすめします。

C#を使用するならLINQ機能の知識も定着させよう

XMLデータは多くの現場で利用されています。データベースを活用するまでもないデータなどはXMLで扱うこともあります。データベース、XMLにとらわれずにデータの抽出を行えるLINQ機能は、ますますこれからも活用されていくでしょうから、この機会に知識として定着させていきましょう。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)

Search

Popular

reccomended

Categories

Tags