簡単なデータ操作を可能にするLINQ
翻訳校正:村上雅章・野崎裕子
LINQ(.NET統合言語クエリ)のお陰で、開発者はSQLを用いることなく、自身が選んだ言語でデータアクセスを行えるようになった。今回は、名前空間の紹介やコード例によってLINQの概要を説明している。
LINQ(.NET Language-Integrated Query:.NET統合言語クエリ)は、特にMicrosoftが.NETプラットフォームの最新リリース(手始めにC# 3.0とVisual Basic 9.0で対応)とVisual Studio 2008(関連英文記事)でそれを採用したことで、大きな注目を集めている。
LINQは基本的に、SQLを用いることなく、開発者が自身の選んだ言語でのデータアクセスを可能にするものである。.NETプラットフォームのコンテキストにおいて、LINQは.NET Frameworkの拡張セットであり、言語に統合されたクエリ操作、セット操作、変換操作を含んでいる。現在はC#とVisual Basicにおいて、データ操作のためのクラスライブラリを用いることで、それら言語のシンタックスを自然なかたちで拡張している。
LINQという名前において鍵となる単語はintegrated(統合)である。これは、開発者が自らの開発言語(現時点でLINQをサポートしているのはC#とVisual Basic)を用いたデータソースの処理が可能になるということを意味している。この統合によってSQLに精通する必要がなくなるため、開発者はバックエンドのデータ処理に好きなプログラミング言語を使用することができるわけだ。
LINQはバックエンドにあるどのようなデータソースでも処理できるよう設計されているため、開発者はVisual Studio 2008といった、自らが使用する統合開発環境(Integrated Development Environment:IDE)の持つ多くのメリットを享受することができる。これによって、外部データにアクセスするコードに対するコンパイル時のシンタックスチェックや静的な型付け、コードアシスト(これらはSQL Server Enterprise Managerのような外部ツールを使用する場合には使えない機能である)を行えるようになる。
Microsoftは以下のような3種類の実装を用意している。
- LINQ to Object:メモリ内にあるデータの検索および操作を行う。
- LINQ to ADO.NET:これには3つのバリエーションがある。すなわち、オブジェクトのリレーショナルマッピングを実装したLINQ to SQL(リレーショナルデータを処理する。サポートはSQL Serverのみ)と、LINQ to DataSet(ADO.NETのデータセットを処理する)と、LINQ to Entities(MicrosoftのORMソリューション)である。
- LINQ to XML:XMLデータソースの検索および操作を行う。
LINQのこういった3つの機能はさまざまな.NETクラスライブラリを通じて提供されている。
- 今日のトップ記事
- 昨日
- 5日前
- 6日前
- 7日前
- ホワイトペーパー
- 話題のタグ
「Google Chrome」の拡張機能、開発者からのアップロード受付を開始
IMAPでGmailを受信、最も手っ取り早いのは?Windows 7、Ubuntu 9.10、Snow Leopardのメーラー比較
Snow LeopardではNTFSをサポート--その源流を訪ねる(2)
MS運営のオープンソース開発プロジェクト支援サイト「CodePlex」を探検する(2)
Snow LeopardではNTFSをサポート--その源流を訪ねる(1)
フォトレポート:「Windows Server 2008 R2」--あまり知られていない有用な機能10選
高まるiSCSIストレージへの注目度
大丈夫?あなたの会社のセキュリティ対策
電力に"ふた"をする独自の省エネ機能とは!?
企業ITシステムの企画、構築、運用のイロハ
100万円で実現!中小企業の情報漏えい対策
―エン・ジャパン厳選求人☆毎週更新―
【最終警告】パンデミック対策特集