問題タブ [linq]
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 - SQL から結果のページを返す方法は?
多くのアプリケーションには、データベース テーブルのデータを一度に 1 ページずつ表示するグリッドがあります。それらの多くは、ユーザーがページごとのレコード数を選択したり、任意の列で並べ替えたり、結果を前後に移動したりすることもできます.
テーブル全体をクライアントに渡さずにクライアントでデータをフィルタリングせずに、このパターンを実装するのに適したアルゴリズムは何ですか。表示したいレコードだけをユーザーに表示するにはどうすればよいでしょうか?
LINQ はソリューションを簡素化しますか?
.net - Entity FrameworkのExpression.Invoke?
Expression.Invoke
Entity Framework は演算子をサポートしていません。使用しようとすると、次の例外が発生します。
「LINQ 式ノード タイプ 'Invoke' は、LINQ to Entities ではサポートされていません。
この欠けている機能の回避策はありますか? ここで詳述されている PredicateBuilder を Entity Framework コンテキストで使用したいと思います。
Edit 1 @marxidad - 私はあなたの提案が好きですが、それは私をやや困惑させます. 提案されたソリューションについてさらにアドバイスをいただけますか?
編集 2 @marxidad - 説明していただきありがとうございます。
c# - DataTable に対する LINQ クエリ
DataTable オブジェクトで LINQ クエリを実行しようとしていますが、奇妙なことに、DataTables でそのようなクエリを実行するのは簡単ではありません。例えば:
これは許可されていません。このようなものを機能させるにはどうすればよいですか?
DataTable で LINQ クエリが許可されていないことに驚きました。
c# - Linq 演算子を条件付きで適用するにはどうすればよいですか?
私たちは、ログ ビューアーに取り組んでいます。使用には、ユーザー、重大度などでフィルター処理するオプションがあります。Sql の時代には、クエリ文字列に追加していましたが、Linq でそれを行いたいと考えています。条件付きで where 句を追加するにはどうすればよいですか?
c# - LINQ、マッピングでインターフェイスと例外を実装するエンティティ
LINQ でリポジトリ パターンを使用しています。IRepository.DeleteOnSubmit(T Entity) があります。正常に動作しますが、エンティティ クラスに次のようなインターフェイスがある場合:
そして、次のようなエンティティを削除しようとしています:
throws
メンバー 'IEntity.ID' には、SQL への変換がサポートされていません。
DB からのデータのフェッチは機能しますが、削除と挿入は機能しません。DataContext に対してインターフェイスを使用するには?
ここにあります:
例外メッセージ: メンバー 'MMRI.DAL.ITag.idContent' には、サポートされている SQL への変換がありません。
コード:
(DB からすべてのタグを取得し、それらを削除します)
そしてスタックトレース:
部分クラスをデコレートしようとすると:
「無効な列名 'idContent'」というエラーがスローされます。
linq - LINQ-to-SQLとストアドプロシージャ?
StackOverflow( LINQの初心者ガイド)の「LINQの初心者向けガイド」の投稿を確認しましたが、フォローアップの質問がありました。
私たちは、データベース操作のほぼすべてがかなり単純なデータ取得である新しいプロジェクトを立ち上げようとしています(すでにデータを書き込んでいるプロジェクトの別のセグメントがあります)。これまでの他のプロジェクトのほとんどは、そのようなものにストアドプロシージャを利用しています。ただし、もっと理にかなっている場合は、LINQ-to-SQLを活用したいと思います。
したがって、問題は次のとおりです。単純なデータ取得の場合、LINQ-to-SQLとストアドプロシージャのどちらのアプローチが優れていますか?特定の賛否両論はありますか?
ありがとう。
c# - C# のエージング データ構造
過去X分間にいくつのアイテムを照会できるデータ構造が必要です。アイテムは単純な識別子またはより複雑なデータ構造である可能性があり、できればアイテムのタイムスタンプは、外部に保存されるのではなく、アイテム内にあることが望ましいです (ハッシュまたは同様のものとして、複数のアイテムが同じものを持つ問題を抱えたくないでしょう)タイムスタンプ)。
これまでのところ、LINQ を使用すると、特定の時間よりも長いタイムスタンプを持つアイテムを簡単にフィルター処理して、カウントを集計することができたようです。.NET 3.5 固有のものを自分の運用環境に取り込もうとするのはまだためらっていますが。同様のデータ構造に関する他の提案はありますか?
私が興味を持っているもう 1 つの部分は、古いデータのエージングアウトです。6 時間以内のアイテム数のみを要求する場合は、それよりも古いものをデータ構造から削除したいと思います。長時間実行されるプログラムになります。
linq - SQL Server 2008 と 2005 の Linq 統合
Linq To SQL または Entity フレームワークはどちらも、SQL Server 2005 とうまく統合されています。
SQL Server 2008 のスペック シートでは、さらに優れた統合が約束されていますが、私にはわかりません。
2008 サーバーと通信するときに Linq に関して実行でき、SQL Server 2005 と通信するときに実行できないことの例は何ですか?
linq - LINQ to SQL Mapping From Money to Double
I'm working with LINQ for the first time and wanted to get the Mapping to work when I have a money type in SQL, but my domain object property is of type double. How can I express this in the XML file, or in code so that the mapping does not throw the usual "invalid cast" exception?
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 を使用するいくつかのトリッキーな方法があります