このサイトで私がよく尋ねたことの1つはLINQ。私が尋ねた質問は幅広く多様であり、その背景にはあまり多くの文脈がありません。それで、私がLINQについて学び続けながら、私がLinqで得た知識を統合するために、私はこの質問を投稿してそれを維持し更新するために追加の情報を持っています。
私はまた、それがLINQについて学びたい他の人々にとって有用なリソースになることを証明することを願っています。
からMSDN:
LINQプロジェクトは、 .NETへの一連の拡張 を包含する枠組み 言語統合クエリ、セット、 操作を変換します。 C#を拡張する とVisual Basicと母国語 クエリの構文とクラスの提供 これらを利用するライブラリ 能力。
これが意味することは、LINQが共通の構文を使用してさまざまなデータソースを問い合わせるための標準的な方法を提供するということです。
現在マイクロソフトが提供するいくつかの異なるLINQプロバイダーがあります。
他にもかなりの数のものがあり、それらの多くはリストされていますここに。
チョーク方法を提供しますCSVファイルを出力する
ジェフ方法を示します配列から重複を削除する
ボブはデータテーブルとは異なる順序付きリスト
マルクス方法を示します配列をソートする
Danaは、実装の助けを得ますLinqを使ったクイックソート
からのリンクのまとめGateKillerの質問下にあります:
Scott Guthrieが提供します彼のブログでLinqの紹介
の概要MSDNのLINQ
ChrisAnnODellチェックアウトを提案します。
Linqは現在VB.Net 9.0とC#3.0で利用可能です。そのため、最大の利点を得るにはVisual Studio 2008以上が必要です。 (あなたは常にメモ帳でコードを書き、MSBuildを使ってコンパイルすることができます)
というツールもありますLinqBridgeこれにより、C#2.0でのクエリのようにLinqを実行できます。
この質問LINQを使うためのトリッキーな方法がいくつかあります
ADO.NET Entity Frameworkは重要な.NETモジュールになるので、LINQ to Entitiesに言及してください。
本を入手アクションでのLINQコーディング本を読むのは簡単で、Linqの使い方と.NET 3.5の新機能について説明しています。
http://www.aspnetpro.com/articles/2009/04/asp200904zh_f/asp200904zh_f.asp
見落とされているが重要な利点である私見は、LINQのコーディング効率、例えば、ほんの少しのコードでどれだけ達成できるかということです。私は個人的にはクエリの構文が読みやすく理解しやすいと感じています。
「LINQにはどのような種類がありますか?」に対する回答です。不完全です。 まず第一に、あなたはあなた自身の "フレーバー"を作ることができます。はい、これは高度な作業ですが、現在はさまざまなLINQ実装があります。
Charlie Calvertのブログには、既存のLINQプロバイダー(およびLINQの学習に関するその他のリソース)のリストがあります。LINQへのリンク。
また、Matt Warrenによる、独自のLINQプロバイダーの作成方法に関する素晴らしい一連のブログ投稿もあります。LINQ:IQueryableプロバイダーシリーズの構築
私の2セント、LINQがどのように機能するかを理解するために、 "C#in Depth"ブックの "11クエリ式とオブジェクトへのLINQ"と "12コレクションを超えたLINQ"の章を読んでください。
Linqの練習のために
LINQで練習や答えをいくつか練習したいのであれば、セットアップは本当に簡単です。私の意見では、すごいことです。
https://github.com/walkhard/linq-exercises
gitからダウンロードし、Visual Studioで開きます。あなたの仕事はテストに合格することです。
[ディスクロージャー:私はそれからいくつかのlinqを学び、私はプロジェクトに貢献しているのでそう、私はそれが学ぶためのすばらしく、速く、そして効率的な方法だと思います。]