問題タブ [morelinq]
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.
c# - 2 つの列に基づく Linq の区別
2 つの列で同じ組み合わせを持つ一意のレコードを取得する必要があるという要件があります。私のデータは、いくつかのデータを持つCA(列A)とCB(列B)のようになります
CA
CB
1
2
1
2
3
4
5
6
2
1
1
6
1
6
5
1
たとえば、1
一意である必要がある両方の列から値を持つレコードをフェッチする必要があるとします。
したがって、私の最終結果は次のようになります。
1
2
1
6
5
1
ここでは、最初のレコードに組み合わせが として既に存在するため、レコード を取得しないで2
ください。1
1
2
私が試したクエリは次のとおりです。
レコード全体が必要なので、moreLinq
拡張子 を使用しました。DistinctBy
ここで、私の実際の要件は、ユーザーの最近のチャットを取得することです
c# - List のリスト内の LINQ start および stop セグメント要素
与えられた 1 つのクラスのオブジェクトのリスト ( List<Type1>
)
List<Type2>.Add()
連符グループ (可変サイズ) の開始値と終了値を取得して、2 番目のクラス ( )のリストに追加したいと考えています。
要素の順序は重要です。オプションとして MoreLinq がありますが、これらの値を取得するために実行する必要がある操作の種類は不明です。パーティションまたはある種の GroupBy のいずれかである可能性がありますが、それは機能していないようです。
最後に必要な最終結果は
c# - DistinctBy が null/空を無視する
映画のリストがあり、それらを別のリストとマージして複製する必要があります。
DistinctBy(m => m.SomeUniqueMovieProperty)
これを達成するためにJon Skeet'sを使用していますが、問題なく動作します。DistinctBy
ただし、映画の 10 ~ 20% (いずれかのリスト) でこのプロパティが入力されておらず、 1 つの幸運な映画に折りたたまれている場合があることがすぐにわかりました。
これは問題です。このプロパティの値を持たないすべてのムービーを保持したいのです。最初は、各コレクションからこれらのムービーを抽出し、複製してから再度マージすることを考えていましたが、この問題に対するより短い解決策はありますか?
c# - Count() 値の IEnumerable バッチ処理の不一致
等しいサブセットをバッチ処理しようとしていIEnumerable<T>
ますが、次の解決策に出くわしました:
MoreLinq Nuget ライブラリ バッチ。その実装の詳細は次のとおりです。
MoreLinq - バッチ、下にソース コードを貼り付けます。
/li>別の最適なソリューションは、次のリンクで利用できます (メモリ効率が向上します)。
IEnumerable バッチ処理、下にソース コードを貼り付けます。
/li>
どちらのソリューションも最終結果を として提供しIEnumerable<IEnumerable<T>>
ます。
次のコードに矛盾があります。
var result = Fetch IEnumerable<IEnumerable<T>>
上記のいずれかの方法から
result.Count()
、別の結果につながります。結果が正しく、両方で同じであっても、MoreLinq Batch では正しいですが、他のものでは正しくありません。
次の例を検討してください。
提供されたバッチ処理の結果が正しい場合ToList()
でも、2 番目のメソッドでメモリ ストリームをまだ処理しており、メモリが割り当てられていないため、これはエラーになりますが、結果が正しくないことはありません。任意のビュー / 提案