問題タブ [linq-extensions]
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.
linq - First()はOrderBy()を実行しますか?
(漸近的な)パフォーマンスに違いはありますか?
と
つまり、First()はOrderBy()を実行しますか?いいえと思います。MSDNによると、GetEnumeratorを介してコレクションを列挙することはできますが、言い回しは他の拡張機能を除外しません。
linq-to-sql - LINQクラスを異なる名前空間の自分の部分クラスに拡張しますか?
もちろん、テーブルに基づいて自動生成されたクラスを含む.dbmlファイルがあります。
ただし、自分のクラスに拡張したいと思います。通常、各テーブルが、関連するすべてのdaoクラスとサービスクラスを含む独自のフォルダーに独自の名前空間を取得するように設計します。したがって、たとえば「customers」のみに関係するページを扱っている場合、customerNSのみを含めることができます。
しかし、LINQを使用すると、これを実行できないようです。プロジェクトからデフォルトの名前空間を削除しようとしました。カスタム名前空間を使用して.dbmlファイルを独自のフォルダーに配置し、「using」ステートメントを追加しようとしましたが、何も機能しません。
また、.dbmlファイルに関連付けられたエンティティ名前空間、コンテキスト名前空間、およびカスタムツール名前空間のプロパティを確認し、これらすべてを名前xに設定し、他のクラスで「xを使用」して部分的なクラスを拡張できるようにしましたが、動作しません。
これは可能ですか、それともすべての拡張部分クラスを.dbmlファイルと同じ名前空間に保持する必要がありますか?
c# - linq 拡張メソッド ElementAt のパフォーマンス
Enumerable.ElementAt(TSource)
メソッドへのMSDNライブラリエントリは言う
「ソースのタイプが IList を実装する場合、その実装は、指定されたインデックスで要素を取得するために使用されます。それ以外の場合、このメソッドは指定された要素を取得します。」
次の例があるとします。
実行に違いはありますか?または、ElementAtcol
は、ICollection<> としてのみ宣言されていますが、IList<> も実装していることを認識していますか?
ありがとう
c# - シーケンスの最後から要素を取得するlinq拡張メソッド
列挙可能な拡張メソッドがあります
これは最初count
から最初の要素を取ります。
要素を最後から取得する方法はありますか?または、オフセットから最後まで要素を取得するためのさらに良い方法はありますか?
ありがとう
asp.net-mvc - VisualStudioでAsp.netMVCビューにLinq拡張機能が表示されない
これは私を困惑させ、VisualStudio2010にビューコードのSystem.Linq拡張メソッドを認識させることができないようです。Intellisenseは機能せず、VisualStudioの赤は認識されない拡張メソッドに下線を引きます。
これらはweb.configの最も関連性の高い部分であり、System.Linq拡張メソッドを認識するためのVisualStudioに関連していると思います。コメントアウトされた行はコメントされていない可能性がありますが、違いはありません。
このような部分的なビュー定義があります。2行のコメントアウトについても同じです。コメントなしは違いはありません:
この特定の部分ビュー拡張メソッドは、名前空間の下のアセンブリでAny()
定義されていても認識されません。System.Core
System.Linq
どの構成設定が欠落していますか?Visual Studioは、名前空間System.Core
内の拡張メソッドを列挙するためのアセンブリを認識できないようです。System.Linq
c# - Where 句が満たされない場合、LINQ 拡張メソッドは new() .Value を使用して新しい KeyValuePair を作成できますか?
私はコレクションを持っています
どこ
コレクションでLINQを使用して、Details
インスタンスを返します
は次.SingleOrNew
のように定義されています
そのため、 a が節を満たすKeyValuePair<string, Details>
リストに見つからない場合、 aが返されます。x
Where
new KeyValuePair<string, Details>
しかし問題はnull の Details 値new KeyValuePair<string, Details>
が含まれていることです。
句から一致が見つからない場合、 like.Where
を返す LINQ (拡張) メソッドを使用できるかどうか疑問に思っていましたが、デフォルトのパラメーターなしのコンストラクターを使用して/の部分が初期化されていますか? そのため、null ではありません。new KeyValuePair<string, Details>
SingleOrNew
.Value
Details
KeyValuePair
Details
jquery - jqGridのLINQ検索でnull許容値
まず第一に、私の悪い英語で申し訳ありませんが、私の母国語ではありません。
私の仕事でASP.NETMVCプロジェクトでjqgridを使用していますが、検索を実装するときにいくつかの問題があります。私はLinqExtensionsを使用してインターネット上で見つける1つの解決策を使用しようとします。この問題は、エンティティに次のようなnull許容値がある場合に発生します。
これは、データベースで値がnullを受け入れ、プロジェクトの他の理由でc#コードにnull許容値が必要なためです。
LinqExtensionsという名前の別のクラスでは、where句は次のようになります。
Modelクラスのメソッドは次のとおりです。
グリッドを作成し、値を非常に正確に表示しますが...文字列で検索すると、一部の値がnullであっても問題が発生し、IntegerValue(nullをサポート)で検索しようとすると、エンティティの一部の値がnullの場合に例外がスローされます。この問題は私を狂った男に変えています。
どうか、同じ問題があるか、それを解決する方法を知っているなら、私は永遠に感謝します
さよなら
entity-framework - LinqToEntitiesのカスタム拡張メソッド
Linq-To-Entitiesを使用してSQLServer2008R2データベースにクエリを実行したいと思います。
私はEntityFramework4.1(Code-First)
を使用しており、クエリはエンティティのハッシュ値を次のようにパラメーターと比較する必要があります。
ただし、EFプロバイダー用に定義されたコア拡張メソッドとCLRメソッドしか使用できません。そのため、実行直前にL2Eが理解できるメソッド
に変換しようとしています。HashCode()
参考までに、HashCodeの実装は複雑ではありません。何かのようなもの:
すべてのエンティティを列挙可能として取得し、コード(Linq To Objects)で確認できることはわかっていますが、その方法で取得しようとしているデータの量を考えると、これは大変なことです。
それはまったく実行可能ですか(GetHashCode
メソッドの場合)。もしそうなら、どうすればそれを実装できますか?
ありがとうございました。
linq - linq 拡張メソッド、単一アイテムの複数のプロパティを更新する方法は?
私のデータベースには、更新したい項目が 1 つあります。私はこのようなことを試みましたが、うまくいきません:
このコードは何が機能しますが、これは非効率的だと思います (間違っていますか?):
1 つのクエリで、1 つのオブジェクトのさまざまなプロパティを更新する方法はありますか?
c# - オブジェクトの一部である項目のリストを取得するにはどうすればよいですか?
私はこのようなものを持っています:
このクラスのプロパティを取得したいときは、次のようにします。
すべてのプロパティを取得できますが、List<SomeObject>
プロパティは常に null です。myClass
すべてのプロパティと s のリストを持つ単一のオブジェクトを取得するにはどうすればよいSomeObject
ですか? 私はそのようにできることを知っています:
しかし、私はそのようにしたくありません。オブジェクト全体を一度に取得する他の方法はありますか?