問題タブ [objectquery]

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.

0 投票する
1 に答える
643 参照

linq-to-entities - ObjectQuery の実行方法

Linq to Entities は、IQueryable を実装する ObjectQuery を使用します。通常は IQueryable メソッドを使用してデータをフィルタリングしますが、今日は特別な LIKE ステートメントを作成する必要がありました。フレームワークはスマートであると考え続け、特別な LIKE ステートメントを null および無効にするチルダを使用して、ワイルドカード「%」を「エスケープ」します。そのため、調べてみると、ObjectQuery には Where メソッドのオーバーロードがあり、ObjectParameters と共に文字列を渡すことができることがわかりました。これを実行しましたが、IQueryable のように実行されません。アプリケーションを実行しても、このコードがヒットした後は何も起こりません。エラーもデータベースへのヒットもないため、作成したクエリが実際には実行されていないことがわかります。

この子犬を処刑するにはどうすればよいですか?

0 投票する
1 に答える
3656 参照

entity-framework - LINQをエンティティに使用するときにIQueryableとObjectQueryを返す

LINQを使用して、クエリIQueryableが処理される前のタイプであると誘惑するときに読んでいますが、クエリが処理されると、クエリはではなく、になりIQueryableますObjectQuery

その場合、IQueryableを返すために私のレイヤー(リポジトリレイヤー)からメソッドを書くのは正しいですか?

キャストする必要がありますか?

なぜ返品したいのObjectQueryですか?

私はLINQからSQLのバックグラウンドに来ていますIQueryableが、EFはこれを変えたようです。

どんな助けでも本当にありがたいです。

0 投票する
4 に答える
16801 参照

c# - OR句で区切られたWhereフィルターでObjectQueryを使用する方法

ObjectQueryビルダーを使用して生のSQLフィルターWHERE(...)または(...)を書き直す方法について誰かが答えてくれませんか?

Where()メソッドを使用しますが、代わりにORを使用したいのですが、ANDで区切られたwhere句が生成されます。QueryBilderで可能ですか?これを使用して「OR分離」フィルターを生成する方法を意味します。

ありがとう、Artem

0 投票する
2 に答える
2651 参照

sql - Entity Framework-LINQを使用せず、文字列のみを使用してテーブルを結合する方法は?

EntityFrameworkについて質問があります。これについての答えを知っているなら答えてください。私はそのような質問があります:

特に、1つのクエリでいくつかのテーブルを結合したいのですが、LINQを使用できず、クエリ内のDBフィールドにマップされたオブジェクトでObjectQueryを使用できません。各エンティティが動的に作成するためです。だからこれは私が使用できないものです:

msdn.microsoft.com/en-us/library/bb425822.aspx#linqtosql_topic12

msdn.microsoft.com/en-us/library/bb896339%28v=VS.90%29.aspx

問題は、オブジェクトを使用する代わりに、このようなものを使用できるかどうかです。

目的は、Whereメソッドのような構文でObjectQueryのJoinメソッドを使用することです。

msdn.microsoft.com/en-us/library/bb338811%28v=VS.90%29.aspx

ありがとう、Artem

0 投票する
2 に答える
1360 参照

c# - 1つのクエリで少数のGroupJoin

一貫性のあるGroupJoinをほとんど使用せずにObjectQueryを作成しようとしています。つまり、メインテーブルを1つ選択し、LEFTJOINを追加する必要があります。SelectManyメソッドを使用すると、フィールドRoleIDにアクセスできないため、次のように実行します。

すべてが機能していますが、何らかの方法でINNER JOINとして機能しています。私は、SelectManyメソッドがこの動作を引き起こすことに気付きました。このクエリを生成します:

私はそれを削除し、次のエラーが発生しました:

メソッド'System.Linq.Enumerable.SelectMany(System.Collections.Generic.IEnumerable、System.Func>、System.Func)'の型引数は、使用法から推測できません。タイプ引数を明示的に指定してみてください。

誰かが私にこの振る舞いを説明してくれませんか、そして可能であればそれを修正する方法をアドバイスしてください。

前もって感謝します。

0 投票する
1 に答える
1368 参照

c# - ObjectQueryでContainsを使用する

これが私の状況です:

am:n-アーティストとイベントの関係があります。私がやろうとしているのは、特定のアーティストを含むイベントのみを含むIQueryableを取得することです。データアクセス層にリポジトリを使用しています。明らかに、次のアプローチは機能しません。

私はEntityFrameworkを初めて使用するので、その理由はよくわかりませんが、推測できます。ですから、誰かがこれを非常に簡単な方法で説明できた場合、私も感謝します。とにかく、私が思いついた私の解決策は次のようになります:

すべてのイベントが取得および処理されるため、これはまったく良い解決策ではありません。これは大きなオーバーヘッドです。私の問題のより良い解決策を教えてくれる人はいますか?また、ObjectQueryとは何か、およびObjectQueryをIQueryableにキャストする方法(可能であれば)を実際には理解していなかったという事実も認識しています。

私はどんな提案にも感謝しています。

0 投票する
2 に答える
6952 参照

entity-framework-4 - Entity Frameworkクラスをシリアル化する際に循環参照を回避するにはどうすればよいですか

Entity Framework 4 を使用した MVC-3 (RC1) アプリケーションがあります。

コントローラー アクションから JSON オブジェクトを返したいと考えています。このオブジェクトは、明らかに参照を返す他のオブジェクトによって参照されます。

したがって、次の循環参照エラーが発生します。

「/」アプリケーションでサーバー エラーが発生しました。

タイプ 'Application.Models.ReferenceObject' のオブジェクトをシリアル化中に、循環参照が検出されました。

説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。

例外の詳細: System.InvalidOperationException: タイプ 'Application.Models.ReferenceObject' のオブジェクトをシリアル化中に循環参照が検出されました。

NB: Application & ReferenceObjectは明らかに実際の名前空間 / オブジェクトの代替です。

Stack Overflow: Circular reference exception when serializing LINQ to SQL classesによると、これは JSON.Net を使用して克服できます。ただし、これを回避し、代わりにシリアル化されるオブジェクトから問題のある参照プロパティを除外しようとします。

どういう意味ですか?

私はこのようなことをしたい:

where**<method>**メソッドとは反対のことを行うObjectQuery(Of T).IncludeメソッドでありObjectsReferencingThis、循環参照の原因となっているプロパティです。

注意:これらのプロパティを削除したり、POCO を作成したりしたくはありません。これは Json のシリアル化にのみ影響するためです。

誰でも助けてください。

:)

0 投票する
3 に答える
12692 参照

.net - DBQueryを変換するにはどうすればよいですかObjectQueryに

DBQuery<T>変換するがありますIQueryable<T>(このビットは正常に機能します)。しかし、私はIQueryableをObjectQueryに変換しようとしています..失敗します:-

これは、Entity-Framework 4 CTP5 Magic Unicorn blahblahblahに切り替える前は機能していました。今、それは機能していません-すなわち。objectQueryですnull

さて、DBQuery<T> inherits IQueryable<T>..だから私はこれがうまくいくはずだと思いました。

コードを..に変更した場合

次に、次の例外がスローされます:-

System.InvalidCastException:タイプ'System.Data.Entity.Infrastructure.DbQuery1 1[Tests.Models.Order]' to type 'System.Data.Objects.ObjectQuery[Tests.Models.Order]'のオブジェクトをキャストできません。

助言がありますか?

0 投票する
0 に答える
978 参照

wpf - WPF コントロールを LINQ to Entity クエリにバインドするための推奨されるパターンは何ですか?

MSDNでは、次の情報を読むことができます。

コントロールを ObjectQuery に直接バインドしないことをお勧めします。代わりに、コントロールを Execute メソッドの結果にバインドします。この方法でバインドすると、バインド中にクエリが複数回実行されるのを防ぐことができます。

LINQ クエリを使用する場合は、クエリの結果を ObjectQuery にキャストし、Execute メソッドを呼び出すことをお勧めします。

私の質問は次のとおりです: LINQ to Entity (最大で IQueryable) の結果を、より具体的な型である ObjectQuery にキャストするのは正しいですか??

コントロールを LINQ クエリの結果にバインドする必要がある場合に使用する正しいパターンですか?

Visual Studio 2010 の [データ ソース] ウィンドウから WPF フォームにデータ ソースをドラッグすると、MSDN で説明されているように 2 つのメソッドが生成されますが、アプリケーションでは "predefinedTokensQuery" 変数にフィルターを適用する必要があるため、 LINQ クエリ (生成された "predefinedTokensQuery" 変数の初期化を置き換える) を実行すると、コンパイラは LINQ クエリを ObjectQuery に明示的にキャストできないため、不平を言います。

次のコードは、私のアプリケーションで現在どのように機能しているかを示していますが、ここで何かを見落としていて、推奨されるパターンに従っていないのではないかと本当に心配しています。

ありがとうございます。フランク・アベル

0 投票する
1 に答える
769 参照

linq - selectInsideSelectのObjectQueryラムダ式

ObjectQueryでラムダ式を使用してこのようなクエリを作成したい

使ってみます

しかし、それは機能していません。誰かが私を正しい方向に向けることができますか?

ありがとう