問題タブ [ado.net-entity-data-model]

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

c# - ADO.NET データ サービス

Silverlight で ADO.NET Data Services を使用することを考えています。msdnの Data Model and Data Service Implementations (ADO.NET Data Services/Silverlight)トピックを見てきました。彼らの例では、データベースから生成されたデータ モデルを構築し、データモデル内のエンティティにクエリを実行します。私の場合、ストアド プロシージャを使用したいので、データ モデルを作成し、テーブルとビューの代わりにストアド プロシージャを追加しましたが、実行方法がわかりません。サンプルはありますか?

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

.net - ADO.NET Entity : ビューに基づくデータ選択の制限

次の例を検討してください。

SQL テーブルの顧客:

SQL ビュー ViewCustomerSelection:

ViewCustomerSelection に対応する値を持つ顧客のみを選択する ADO.NET エンティティを作成したいと思います

以下は機能しません:

  • ViewCustomerSelection の条件やフィールドを使用せずに Customer および ViewCustomerSelection にマップするエンティティを作成します。 ViewCustomerSelection は SQL に含まれず、すべての顧客が返されます。
  • ViewCustomerSelection からのフィールドを含めます: 正しい選択が返されますが、現在 Customer オブジェクトは更新できません
  • SomeOption フィールドに「null 以外」の条件を指定します: エラー - 「'IsNull=false' 条件のプロパティ ViewCustomerSelection.SomeOption をマップする必要があります。
  • ViewCustomerSelection.ID フィールドに「null 以外」の条件を指定します: エラー - 「エンティティ タイプの主キーに条件が含まれています。マッピングから条件を削除してください。

明確化

データベース定義:

ViewCustomerSelection に存在するレコードのレコードのみを持つ、ID と名前を持つエンティティ Customer が必要です (実際には、ビューはより複雑であり、単純な条件を使用して表現することはできません)。

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

ado.net - ADO.NETエンティティモデルで外部キーを取得するにはどうすればよいですか?

3つのテーブル(およびエンティティモデル内の対応するエンティティ)がありますゲーム:Id-primaykey...その他の列

プレーヤー:ID-主キー...他の列

GamePlayer(プレーヤーは多くのゲームに参加できます)GameId->GamePlayerIdからの外部キー->Playerからの外部キー...他の列

私のコードでは、gameIdとplayerIdを他の方法で利用できます。これを使用して、プレーヤー(playerId)が特定のゲーム(gameId)に参加しているかどうかを知りたいです。だから私はこれをやっています:(エンティティは私のコンテキストオブジェクトです)

IQueryable query = entity.GamePlayer.where(gp =>((gp.Game.Id == gameId)&&(gp.Player.Id == playerId)))クエリが行を返す場合、プレーヤーが参加していることがわかりますそのゲームで。

エンティティ参照に関する複数のMSDNブログを読みましたが、混乱しています。MSDNは、最初にEntityReferenceオブジェクトのIsLoadedを確認する必要があり、ロードされていない場合はエンティティをロードする必要があり、それをクエリで使用することを推奨しているようです。

GamePlayerにはGamePlayer.GameReferenceとGamePlayer.PlayerReferenceがありますが、GamePlayerオブジェクトが手元にないため、参照がロードされているかどうかを確認できません。GamePlayerテーブルは、2つの1...*関係を保持します。GameIdとPlayerIdのみを使用してGamePlayerにクエリを実行する必要があります。私はここで何が間違っているのですか?

代わりに、Player(またはGame)オブジェクトを(IDを使用して)取得し、代わりにGamePlayerエンティティコレクションを確認する必要がありますか?SQLはとてもシンプルでした。これが非常に単純な場合、申し訳ありませんが、SQLクエリをエンティティクエリに変換するのに苦労しています。

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

linq-to-sql - グループ化 (多対多) を使用した Entity Framework クエリ

3 つのテーブル (学生、コース、および 3 番目の StudentsCourses 割り当てテーブル) を使用した従来の多対多のシナリオがあります。

新しいプロジェクトで EF を使用していますが、EF デザイナーは 3 番目のテーブルを作成しません。割り当てられた学生の数とともにすべてのコースを選択する必要があります。プレーン SQL の使用は非常に簡単です。

しかし、このクエリを Linq to SQL に変換する方法がわかりません。ご意見をお聞かせください。

ありがとうございました。

0 投票する
6 に答える
13051 参照

c# - Entity Framework: 外部キー プロパティの設定

おおよそ次のような表があります。

すべてのキーは他のテーブルに関連していますが、アプリケーションが分散されているため、ID をパラメーターとして渡す方が簡単です。だから私たちはこれをしたいと思います:

LINQ-to-SQL ではできますが、EF ではできませんか?

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

.net - ADO.NET Entity Framework が予期しない問題のある INSERT を生成する

ADO.NET Entity Framework を理解するための助けが必要です。

ADO.NET Entity Framework を使用して、WPF TreeView コントロールで階層データを表現および操作しようとしています。

親と子を持つ ADO.NET Entity Framework オブジェクト http://img14.imageshack.us/img14/7158/thingpi1.gif

これらの各 Thing には、1 つの親と 0 個以上の子があります。

私の「削除」ボタン...

アプリケーションのデバッグ中に SQL Server プロファイラーを監視しています。

  1. 最初のボタンをクリックすると、問題なく削除されます。
  2. 2 回目のボタン クリックは、重複する親を挿入し (ただし、GUID の uniqueidentifier プライマリ キーは空)、削除を実行します。
  3. 空の GUID 主キーを持つ別の行を挿入できないため、3 回目のボタン クリックは失敗します (PRIMARY KEY 制約の違反)。

予期しない、生成された T-SQL の重複...

しかし、ただの削除ではありません。私の「追加」ボタンは、予期しない挿入で同様の動作をします。それは同じパターンに従います。

これにより、これらのエンティティ クラスを WPF TreeView にバインドする方法やデータ モデル自体に、より根本的な問題があると思われます。

関連するコードは次のとおりです...

XAML...

ビジュアルベーシック...

私は何を間違っていますか?なぜこれらの奇妙な挿入が生成されるのですか?


アップデート:

私は突破口を開きました。でも、いまだに説明できません。

この質問のコードを単純化したときに、原因を取り除きました。

次のようなLinqを使用するのではなく:

私は次のようなLinqを使用しています:

ご覧のとおり、My Thing エンティティは別の Brand エンティティに関連付けられています。

親と子を持つ ADO.NET Entity Framework オブジェクトと関連オブジェクト http://img25.imageshack.us/img25/3268/thingbrandct4.gif

関係ないと思ったので、上の質問には入れませんでした。

どうやらこれが、Thing テーブルへの予期しない問題の挿入の原因でした。

しかし、なぜ?なぜこれが起こったのか誰か説明できますか?私はそれをよりよく理解したいと思います。

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

entity-framework - EDM から SSRS 2008 を構築する

ADO.Net Entity Framework Entity Data Model に基づいて SQL Server Reporting Services 2008 レポートを作成するプロセスの概要を教えてください。何か例をご存知でしたら教えてください。ありがとうございました!

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

ado.net - ADO.net エンティティ データ モデルでエンティティを補完する

(MVC フレームワークをいじって) ADO.net Entity Data Model を作成しました。ここで、コンテキストのサブセットを返す関数を作成するなど、いくつかのビジネス ロジックで拡張したいと考えています。部分クラスはデータ モデルと一緒に作成されるため、次のように部分クラスを宣言する新しいファイルを作成しました。

その中に GetMovieById(int id) という関数を配置すると、結果は次のようになります。

プロジェクトを開始するまでエラーは発生しません。エラーは次のとおりです。

コンパイラ エラー メッセージ: CS1061: 'RecordStore.Models.MovieDBEntities' には 'MovieSet' の定義が含まれておらず、タイプ 'RecordStore.Models.MovieDBEntities' の最初の引数を受け入れる拡張メソッド 'MovieSet' が見つかりませんでした (ディレクティブまたはアセンブリ参照を使用していますか?)

部分クラスの他の部分に MovieSet が含まれているため、エラーがわかりません。私の質問は、基本的に、これがデータ モデルを拡張する方法ではない場合、どのような方法でしょうか。それが方法である場合、なぜこのエラーが発生するのですか?