問題タブ [entity-sql]

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 に答える
153 参照

asp.net - エンティティ クエリの選択 '*' エラー

私はエンティティフレームワークを使用して選択するためにesqlを使用しています これが私のコーディングです

articleDetail.* 値を取得するにはどうすればよいですか? 「クエリ構文が無効です。用語 '*'、行 1、列 39 の近くです。」というエラーが表示 されます。助けてください。ありがとうございました

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

entity-framework-4 - Entity SQL Sort Then LINQ to Entities GroupBy が IOrderedQueryable を返さない

動作: UI はエンティティ SQLソート式を jqGrid から DAL に送信し、サービス レイヤーに返される Where 句をいくつか適用します。私のサービス層は、Skip()..Take() を IQueryable に適用する PaginatedList オブジェクトを作成します。例:

機能しません: GroupBy() を適用してから Select() を適用すると、同じタイプのエンティティ (ワークシート) のリストが返されます。例:

NotSupportedException がスローされます: メソッド 'Skip' は、LINQ to Entities の並べ替えられた入力に対してのみサポートされます。メソッド「OrderBy」は、メソッド「Skip」の前に呼び出す必要があります。

最初のスニペットは esql ソート式を適用する IOrderedQueryable を返すようですが、2 番目のスニペットはそうではありませんか? または、 GroupBy() はクエリ/コレクションの順序を削除しますか? これが事実であり、LINQ をエンティティに適用する前に esql を適用する必要があるため、SQL ソート + LINQ GroupBy をどのように達成できますか?

関連:
ObjectQuery が実際に IOrderedQueryable になるのはいつですか?
ESQL と LINQ TO Entities を混在させてはいけない理由

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

sql - 一般的なクエリを作成する方法

ここに私の作業コードがあります:

このコードは正常に動作します。しかし、私はこれをどのタイプでも利用できるようにしたいと考えています。現時点では、顧客に対してのみ機能します。queryString を動的にするの簡単ですが、これを Line:? と呼ぶにはどうすればよいでしょうか。

特定のタイプを指定せずに CreateQuery を呼び出す方法はありますか、またはこれを機能させる簡単な方法はありますか? アドバイスをありがとう!

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

entity-framework - ESQL が自己追跡エンティティーで機能しない

このウォークスルーに従って、wcf+ef+self-tracking エンティティ プロジェクトを作成しました。

チュートリアル: 自己追跡エンティティをシリアル化する

サービスでは、Linq to Entities はうまく機能しますが、ESQL を使用するメソッドを追加すると、たとえば次のようになります。

コードの実行時に例外がスローされます。

'd.Name' は、現在のスコープまたはコンテキストで解決できませんでした。参照されるすべての変数がスコープ内にあること、必要なスキーマがロードされていること、名前空間が正しく参照されていることを確認してください。

誰でも助けることができますか?

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

entity-framework - 別のプロジェクトに edmx ファイルがある場合、Entity SQL が機能しない

Enitity SQL を使用してデータをクエリしようとしていますが、edmx ファイルが別のプロジェクトにある場合、例外がスローされます。以下は私のテスト手順です。

  1. クラス ライブラリ プロジェクトを作成し、それに edmx ファイルを追加して、データベースから作成します。

  2. コンソール アプリケーションを作成し、参照するクラス ライブラリ プロジェクトを追加して、app.config ファイルをこのプロジェクトにコピーします。

  3. 以下のようにコードを書きます

    /li>

コンソール アプリケーション プロジェクトを実行すると、「'ID' は、現在読み込まれているスキーマのタイプ 'NorthwindModel.Customers' のメンバーではありません。

スキーマがプロジェクトに読み込まれていないようですが、アイデアはありますか? 追加の質問: このクエリでは、このタイプのすべてのプロパティを選択します。一部のプロパティのみを選択した場合、ObjectQuery の匿名タイプを返すにはどうすればよいですか?

任意の提案をいただければ幸いです。

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

asp.net - ネストされたクエリでのESQL集約`COUNT()`

JSON応答を取得するためのSQLforAJAXのurlパラメーターを使用したASP.NETページの取得要求があります。

例:url: 'GridService.aspx?query=SELECT VALUE s.Name, s.Email FROM ModelContainer.StudentSet AS s'との情報を取得NameしますEmail

jqGridを使用してページングを実装するには、このクエリの総数をJSON応答に追加する必要があります。

ただし、次のクエリはESQLでは機能しません。

これは、子クエリで2つの列が選択されているためです。そして、以下が機能する可能性があります。

不要な列を選びたくないので、前者をうまく機能させる例を誰かに教えてもらえないかと思います。PKNameでもないことに注意してください。Email

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

c# - Entity SQL を使用した概念モデルのクエリ

私のアプリケーションは Entity Framework に基づいています。クエリを別のテーブルに保存することで、特定のテーブルをクエリするようユーザーに提供しています。たとえば、データベースの TopQuery テーブルには、ユーザーの間で人気のあるすべてのクエリが格納されます。これらのクエリは、テーブル「TableData」で実行されます

テスト目的で、次のことを試してみましたが、動作します。唯一の問題は、ユーザーがクエリで言及した列を使用したい場合に、すべての列を返すことです。

私の問題は、ユーザーがこのようなデータベースにクエリを保存すると、機能しないことです。

例外が発生します: 具体化された System.Data.Objects.MaterializedDataRecord から 'TestEntities.TableData' 型への指定されたキャストは無効です。

私も運なしでこれを試しました。

このような場合はどうすればよいですか?

よろしく、

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

entity-framework-4 - esql クエリでエンティティ タイプの名前を取得するにはどうすればよいですか

エンティティ タイプの名前を esql ステートメントの結果の値として返せるようにする必要があるシナリオに遭遇しました。

問題はこれです。MVC3 アプリケーションの SelectList に渡される結果を返すために、esql ステートメントをビルドおよび実行する汎用ヘルパーが配置されています。

テキスト列は、モデルのプロパティに追加された属性から取得された式です。

したがって、たとえば、ドロップダウンに人の名前を姓としてリストする場合は、まず、「it.[LastName] + ", " + it.[FirstName]' のような式で属性を追加します。これにより、次のようなステートメントが生成されます。

TPT を使用して EF4.3 の抽象型を含むシナリオに遭遇しました。このヘルパー メソッドを使用して派生エンティティを列挙する必要があります。このメソッドは、次のような基本データが必要な場合に、すべての派生エンティティを列挙して返します。

ただし、各エンティティがどのタイプであるかを示す方法が必要です。この擬似コードのようなもの:

私がこれをどのように達成できるかについて誰かが知っていますか?

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

entity-framework - ExecuteStoreQuery / esql を使用してエンティティ フレームワークに関連エンドを強制的にロードさせる

データベースに 1 対 1 の関係があり、.Include()EF を使用すると、実行に時間がかかる恐ろしいクエリが生成されます (複数の結合)。だから私は考えました-それらのエンティティをロードするための独自のクエリを作成します。私が試したこと:

  • ExecuteStoreQuery を使用してみましたが、複雑なプロパティを具体化できないため、時間の無駄でした
  • ESQL でオブジェクト クエリを使用しようとしましたが、そこに結合を追加しても、関連するプロパティが読み込まれません。そして (明らかに) を追加すると.Include()、EF は同じ恐ろしいクエリを生成します。

問題は、EF が生成する SQL クエリをバイパスしてエンティティを具体化する方法があるかどうかです..

更新: EF クエリの単なる例です。

コード:

そして、次のSQLが生成されます(クエリを編集して読みやすくしました):

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

entity-framework - Entity Framework 5 SaveChanges が機能しない、エラーなし

このトピックに関する多くの質問のどれも、私の状況に一致していないようです。私は大きなデータモデルを持っています。場合によっては、少数のフィールドのみを UI に表示する必要があるため、すべてを取得する LINQ to Entity クエリを、必要な列のみを取得する Entity SQL クエリに置き換え、Type コンストラクターを使用して、次のように、DbDataRecord ではなくエンティティが返されます。

これは機能し、UI にフィールドが表示されます。変更を加えた場合、UI 要素からタブで移動すると、エンティティ モデルに戻ります。しかし、SaveChanges を実行すると、変更がデータベースに保存されません。ログにエラーは表示されません。ここで、上記のクエリをエンティティ全体を取得する Entity Sql クエリに慎重に置き換えると、次のようになります。

変更はデータベースに永続化されます! そのため、テストとして、エンティティ内のすべての列に名前を付けた最初のクエリと同様の別のクエリを作成しました。これは、2 番目の Entity SQL クエリとまったく同じである必要があります。それでも、データベースへの変更も保持されませんでした。

次のように、返された結果の MergeOption を PreserveChanges に設定して、追跡を開始しようとしました。

しかし、それは効果がありません。しかし実際には、Entity Sql を使用してエンティティ全体を取得しても変更が保持される場合、フィールドのサブセットが取得されるときに異なる動作をする論理的な目的は何でしょうか? これはバグなのだろうか?