186

概要

このサイトで私がよく尋ねたことの1つはLINQ。私が尋ねた質問は幅広く多様であり、その背景にはあまり多くの文脈がありません。それで、私がLINQについて学び続けながら、私がLinqで得た知識を統合するために、私はこの質問を投稿してそれを維持し更新するために追加の情報を持っています。

私はまた、それがLINQについて学びたい他の人々にとって有用なリソースになることを証明することを願っています。

LINQとは何ですか?

からMSDN

LINQプロジェクトは、   .NETへの一連の拡張   を包含する枠組み   言語統合クエリ、セット、   操作を変換します。 C#を拡張する   とVisual Basicと母国語   クエリの構文とクラスの提供   これらを利用するライブラリ   能力。

これが意味することは、LINQが共通の構文を使用してさまざまなデータソースを問い合わせるための標準的な方法を提供するということです。

LINQにはどのような種類がありますか?

現在マイクロソフトが提供するいくつかの異なるLINQプロバイダーがあります。

他にもかなりの数のものがあり、それらの多くはリストされていますここに

利点は何ですか?

  • 複数のデータソースを問い合わせるための標準化された方法
  • クエリの時間安全性をまとめる
  • メモリ内オブジェクトに対して集合ベースの操作を実行するための最適化された方法
  • クエリをデバッグする機能

では、LINQを使って何ができますか?

チョーク方法を提供しますCSVファイルを出力する

ジェフ方法を示します配列から重複を削除する

ボブはデータテーブルとは異なる順序付きリスト

マルクス方法を示します配列をソートする

Danaは、実装の助けを得ますLinqを使ったクイックソート

どこから始めれば?

からのリンクのまとめGateKillerの質問下にあります

Scott Guthrieが提供します彼のブログでLinqの紹介

の概要MSDNのLINQ

ChrisAnnODellチェックアウトを提案します。

LINQを使うために何が必要ですか?

Linqは現在VB.Net 9.0とC#3.0で利用可能です。そのため、最大の利点を得るにはVisual Studio 2008以上が必要です。 (あなたは常にメモ帳でコードを書き、MSBuildを使ってコンパイルすることができます)

というツールもありますLinqBridgeこれにより、C#2.0でのクエリのようにLinqを実行できます。

LINQを使ったヒントとコツ

この質問LINQを使うためのトリッキーな方法がいくつかあります


  • ScottGuのブログへの素晴らしい投稿と参照として+1を付けてください。これは素晴らしい情報源で、私が最初にLINQを学んだ場所です。 - Evan Plaice
  • LINQに夢中になって日本のサイトに行きます。グーグルの翻訳者は、nsfwのリミングやその他のお尻について話しています。ただし、何らかの理由で編集できません。 - Shane

9 답변


11

エンティティへのLINQ:

私はもっとたくさん持っているDelicious.comでタグ付けされた


  • このリンクは質問に答えるかもしれませんが、ここに答えの本質的な部分を含め、参照用のリンクを提供することをお勧めします。リンク先ページが変更されると、リンクのみの回答が無効になることがあります。 - レビューから - Cœur

7

ADO.NET Entity Frameworkは重要な.NETモジュールになるので、LINQ to Entitiesに言及してください。


4

本を入手アクションでのLINQコーディング本を読むのは簡単で、Linqの使い方と.NET 3.5の新機能について説明しています。


4

いくつかのLINQのヒント:

  • 結合の前にフィルタを適用してクエリのパフォーマンスを向上させる
  • オブジェクト参照比較を使用してLINQクエリをフィルタリングする
  • LINQ to SQLクエリで空のコレクションに集計を適用する
  • LINQ to SQLのプロパティのSQLへの読み込みを遅らせる
  • 積極ロードを有効にしてテーブル値関数を使用する
  • LINQ to Objectsクエリで結合を正しい順序で配置する
  • ループ内でLINQクエリを作成する

http://www.aspnetpro.com/articles/2009/04/asp200904zh_f/asp200904zh_f.asp


4

見落とされているが重要な利点である私見は、LINQのコーディング効率、例えば、ほんの少しのコードでどれだけ達成できるかということです。私は個人的にはクエリの構文が読みやすく理解しやすいと感じています。


3

使用に関する注意点LINQ to SQL

マイクロソフトはLINQ to SQLを本当に殺したのですか?

LINQ to SQL DOAですか?

いくつかもあります論争の最初のバージョンについてエンティティフレームワークを含む請願


3

「LINQにはどのような種類がありますか?」に対する回答です。不完全です。 まず第一に、あなたはあなた自身の "フレーバー"を作ることができます。はい、これは高度な作業ですが、現在はさまざまなLINQ実装があります。

Charlie Calvertのブログには、既存のLINQプロバイダー(およびLINQの学習に関するその他のリソース)のリストがあります。LINQへのリンク

また、Matt Warrenによる、独自のLINQプロバイダーの作成方法に関する素晴らしい一連のブログ投稿もあります。LINQ:IQueryableプロバイダーシリーズの構築


2

私の2セント、LINQがどのように機能するかを理解するために、 "C#in Depth"ブックの "11クエリ式とオブジェクトへのLINQ"と "12コレクションを超えたLINQ"の章を読んでください。


0

Linqの練習のために

LINQで練習や答えをいくつか練習したいのであれば、セットアップは本当に簡単です。私の意見では、すごいことです。

https://github.com/walkhard/linq-exercises

gitからダウンロードし、Visual Studioで開きます。あなたの仕事はテストに合格することです。

[ディスクロージャー:私はそれからいくつかのlinqを学び、私はプロジェクトに貢献しているのでそう、私はそれが学ぶためのすばらしく、速く、そして効率的な方法だと思います。]

リンクされた質問


関連する質問

最近の質問