問題タブ [linq-to-entities]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - Entity FrameworkのExpression.Invoke?
Expression.Invoke
Entity Framework は演算子をサポートしていません。使用しようとすると、次の例外が発生します。
「LINQ 式ノード タイプ 'Invoke' は、LINQ to Entities ではサポートされていません。
この欠けている機能の回避策はありますか? ここで詳述されている PredicateBuilder を Entity Framework コンテキストで使用したいと思います。
Edit 1 @marxidad - 私はあなたの提案が好きですが、それは私をやや困惑させます. 提案されたソリューションについてさらにアドバイスをいただけますか?
編集 2 @marxidad - 説明していただきありがとうございます。
linq - LINQ について学ぶ
概要
このサイトで私がよく尋ねたものの 1 つがLINQです。私が尋ねた質問は広範かつ多様であり、多くの場合、その背景にはあまり背景がありません。そのため、Linq で得た知識を統合するために、LINQ について学び続けながら、追加情報で維持および更新する目的でこの質問を投稿しています。
また、LINQ について学びたいと考えている他の人々にとって役立つリソースになることを願っています。
LINQとは?
MSDNから:
LINQ プロジェクトは、言語に統合されたクエリ、セット、および変換操作を含む、.NET Framework の一連の拡張機能のコードネームです。C# と Visual Basic をクエリのネイティブ言語構文で拡張し、これらの機能を利用するためのクラス ライブラリを提供します。
これが意味することは、LINQ は、共通の構文を使用してさまざまなデータソースをクエリする標準的な方法を提供するということです。
LINQ にはどのような種類がありますか?
現在、Microsoft が提供するいくつかの異なる LINQ プロバイダーがあります。
- Linq to Objectsを使用すると、任意の IEnumerable オブジェクトに対してクエリを実行できます。
- オブジェクト指向の方法でデータベースに対してクエリを実行できるLinq to SQL 。
- XML ドキュメントのクエリ、読み込み、検証、シリアル化、および操作を可能にするLinq to XML 。
- Andreiが提案したLinq to Entities
- Linq からデータセットへ
他にもたくさんありますが、その多くはここにリストされています。
利点は何ですか?
- 複数のデータソースを照会する標準化された方法
- クエリのコンパイル時の安全性
- メモリ内オブジェクトでセットベースの操作を実行する最適化された方法
- クエリをデバッグする機能
では、LINQ で何ができるでしょうか。
ChookはCSV ファイルを出力する方法を提供します
Jeffは配列から重複を削除する方法を示します
Bob はデータテーブルから個別の順序付きリストを取得します
Marxidadは配列をソートする方法を示しますDana はLinq を使用したクイックソート
の実装を支援します
どこから始めれば?
GateKiller の質問からのリンクの要約を以下に示します。
Scott Guthrie は、彼のブログで Linq の紹介を提供していますMSDN
の LINQ の概要
ChrisAnnODellはチェックアウトすることを提案します:
LINQ を使用するには何が必要ですか?
Linq は現在、VB.Net 9.0 および C# 3.0 で利用できるため、完全なメリットを得るには Visual Studio 2008 以降が必要です。(いつでもメモ帳にコードを記述し、MSBuild を使用してコンパイルできます)
C# 2.0 で Linq のようなクエリを実行できるLinqBridgeというツールもあります。
LINQ を使用したヒントとコツ
この質問には、LINQ を使用するいくつかのトリッキーな方法があります
entity-framework - Linq to Entities と ESQL のパフォーマンス
Entity Framework を使用する場合、ESQL は Linq to Entities よりも優れたパフォーマンスを発揮しますか?
私は Linq to Entities を使用したいと思っています (主に強力な型チェックのため) が、他のチーム メンバーの何人かは ESQL を使用する理由としてパフォーマンスを挙げています。いずれかの方法を使用することの長所/短所を完全に把握したいと思います。
.net - LinqToEntities でリポジトリ パターンを実装するには?
LinqToEntities を使用してリポジトリ パターンを実装する方法 インターフェイスを実装する方法
linq-to-entities - なぜすべての Linq To Entities が嫌いなのですか?
特に Alt.Net の人々からは、Linq To Entities に対してかなりの敵意があるように見えることに気付きました。「ドラッグ アンド ドロップ」プログラミングへの抵抗は理解していますが、私の理解では、Linq To Entities はそれを必要としません。
現在、Linq to SQL を使用しており、DBML ドキュメントを使用してそれを定義しています (テーブルが 10 個以上になると、デザイナーはほとんど役に立ちません)。
では、同じアプローチが Linq To Entities で機能しないのはなぜでしょうか?
oracle - EntityFrameworkを使用してデータベースの独立性を実装する方法
Entity Frameworkを使用して、かなり単純なサンプルプロジェクトを開始しました。このプロジェクトでは、SQLServer2000データベースから新しいエンティティデータモデルを作成しました。LINQ to Entitiesを使用してデータをクエリし、画面に値を表示することができます。
私は非常によく似たスキーマを持つOracleデータベースを持っています(正確にしようとしていますが、Oracleのすべての詳細を知りません)。プロジェクトを最小限の労力でSQLServerとOracleの両方のデータストアで実行できるようにしたいと思います。エンティティデータモデルの構成文字列を変更するだけで、残りはEntityFrameworkが処理することを望んでいました。ただ、思った通りシームレスには動かないようです。
誰かが私がやろうとしていることをしましたか?繰り返しになりますが、Entity Frameworkを使用して、最小限の労力でSQL ServerまたはOracleデータベースからデータをクエリ(および更新)できるアプリケーションを作成しようとしています。2番目の目標は、データストアを切り替えるときにアプリケーションを再コンパイルする必要がないことです。「データベースからモデルを更新」する必要がある場合は、再コンパイルする必要がないので問題ないかもしれませんが、このルートを使用する必要はありません。誰かが必要かもしれないステップを知っていますか?
join - 複数の左外部結合を持つエンティティへのLinq
LINQtoEntityの左外部結合を理解しようとしています。たとえば、次の3つのテーブルがあります。
Company、CompanyProduct、Product
CompanyProductは、CompanyとProductの2つの親テーブルにリンクされています。
特定の製品にCompanyProductが存在するかどうかに関係なく、すべてのCompanyレコードと関連するCompanyProductを返したいです。Transact SQLでは、次のように左外部結合を使用してCompanyテーブルから移動します。
私のデータベースには3つの会社があり、2つのCompanyProductレコードが14のProductIDに関連付けられています。したがって、SQLクエリの結果は予想される3つの行であり、そのうち2つはCompanyProductとProductに接続され、1つはCompanyテーブルとnullを持っています。 CompanyProductテーブルとProductテーブルにあります。
では、同様の結果を達成するために、LINQ toEntityで同じ種類の結合をどのように記述しますか?
いくつかの異なることを試しましたが、構文を正しく取得できません。
ありがとう。
linq - LINQ-to-Entities 3.5 で「値の場所」を実行する方法
LINQ-to-Entities を使用して「where in values」タイプの条件を適用する方法を知っている人はいますか? 私は次のことを試しましたが、うまくいきません:
これは LINQ-to-SQL でも機能すると思いますか? 何かご意見は?
linq-to-entities - LINQ-to-Entities (Linq-to-SQL ではない) に DataContext はありますか?
最近、Linq-to-Entities のトレースについて質問しました
DataContext の使用について言及しているため、答えの 1 つが正しくなかったと思います。LINQ-to-Entities 用の DataContext はありますか? もしそうなら、どうすれば入手できますか?
linq-to-entities - Linq-to-Entities で lucene.net を使用した人はいますか?
誰かがこれを行った場合は、私に知らせてください。lucene.net については何も知りません。利用したことはありませんが、聞いたことはあります。そのようなものがLinqエンティティフレームワークとどのように統合されるのだろうと思っていましたか?