問題タブ [navigation-properties]

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 投票する
3 に答える
3694 参照

entity-framework - EF4 POCO 1 対多のナビゲーション プロパティが null です

以下の例のように、VS2010、EF4 機能 CTP (最新リリース)、および POCO オブジェクトを使用しています。

簡潔にするために、context以下が EF4 のコンテキスト オブジェクトであると仮定します。エンティティ タイプとデータベースの間に dbml マッピングがあり、次のように問題なく使用できます。

この時点で、データベースには "Doug" という名前の Person レコードと、アカウント レコード "foo" があります。これらのレコードをクエリして取得できます。しかし、Person を保存する前にアカウントを追加しようとすると、Accounts リストは null になります (プロキシはそのプロパティのインスタンスをまだ作成していません)。次の例を参照してください。

他の誰かがこれに遭遇しましたか?さらに良いことに、誰かが良い解決策を見つけましたか?

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

entity-framework - EF4 POCO - ナビゲーション プロパティの更新

Recommendation オブジェクトと FeedbackLevel オブジェクトがあり、FeedbackLevel オブジェクトは Recommendation オブジェクト内のナビゲーション プロパティです

推奨 int EntityKey; FeedbackLevel レベル。

新しいオブジェクトの挿入は、AddObject() で問題なく機能します。これが私がアップデートで試していることですが、うまくいきません。

上記のコードは、基本的に私が持っているもののコンパクトなバージョンです。スカラー プロパティの更新は正常に機能しますが、avove コードが変更なしで成功するため、新しいナビゲーション プロパティを更新できません。

また、最初に既存の推奨事項を取得してから、FeedbackLevel をそれに再割り当てするなど、他のいくつかの方法も試しましたが、うまくいきませんでした。

アップデート:

保存呼び出し中に SQL プロファイラーからキャプチャしたものを次に示します。

FeedbackLevel を保存する必要があることさえ認識していないようです。どうすればそれをトリガーできますか?

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

c# - Entity Framework:グループ化後にナビゲーションプロパティが消えるのはなぜですか?

次のクエリでコレクションを取得します。

そこで、ナビゲーション プロパティにアクセスし、バインドされた情報をナビゲートできます。それらを実際に使用してデータをフィルタリングする方法に注意してください。

結果をグループ化すると、ナビゲーション プロパティが null になります。

私は何か間違ったことをしていますか?

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

asp.net - エンティティ ナビゲーション プロパティでのデータ バインディング例外

と の 2 つのエンティティ クラスがOrderありOrderItemます。タイプOrderのナビゲーション プロパティが含まれていますOrderItemSet

aspx ページには、この EntityDataSource にバインドされた FormView があります。

FormView は DataSource にバインドされ、この FormView の ItemTemplate には、OrderItemSet にバインドしようとする ListView が含まれています。次のようになります。

アプリケーションを実行すると、マークアップの行を指す例外が発生し、次のようDataSource='<%# Eval("OrderItemSet")%>'に通知されます。

DataBinding: System.Web.UI.WebControls.EntityDataSourceWrapper に 'OrderItemSet' という名前のプロパティが含まれていません

ここで何が問題なのですか?

(リストではなく単一のオブジェクト参照である他のナビゲーションプロパティでも同じことを行いましたが、それは機能します。)

ご協力ありがとう御座います!

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

.net - 結合とエンティティの関連付けの使用

私はEntityフレームワークとlinq-to-entitiesを学んでいます。

JOINS (結合キーワード) またはナビゲーション フィールド (関連付け) を使用して、複数のテーブルからクロス値を取得することができます。この場合、フレームワークはクロス データの参照方法を認識しています。

私の質問は、いつ何を使用するのですか?

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

entity-framework - Entity Framework POCO - ナビゲーション プロパティを更新する

関連するエンティティのコレクションを更新する際に問題が発生しています。

本質的に問題は次のとおりです。

これで、レクチャーを追加するための GUI ができました。必要に応じて、編集プロセスをキャンセルできます。

それで、コードは悪いですか?間違って使用する方法はありますか? オブジェクト全体を完全にリロードすることは可能ですか?..

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

asp.net - Entity Framework でのナビゲーション プロパティの実装

皆さん、私は MVC 2 を学んでおり、モデルの部分を除いてほとんどすべてを理解しています。モデルが何であるかは理解していますが、実際に実装すると混乱します。

これが私の状況です。3つのテーブルを持つDBがあります。

Ideas - アイデアのテーブル Tags - タグのテーブル IdeaTag - FK を介して上記の 2 つのテーブルを接続するリンク テーブル

したがって、VS2010 で Entity Framework (.edmx) デザイナーを使用すると、デザイナーで作成された 2 つのクラスを取得します。これは明らかに、タグのアイデアとタグのアイデアの DB テーブルとナビゲーション プロパティにマップされます。

実際にアイデアにタグを追加しようとするまでは、これで問題ありません。ナビゲーション プロパティを処理するためのベスト プラクティスは何ですか? Idea クラスの Tags プロパティにマップされる Textbox を追加したかったのですが、どうすればよいかわかりません。

EF または Linq to SQL について説明する MVC チュートリアルのほとんどは、非常に基本的なものです。

ナビゲーション プロパティの処理とそれらの最適な処理方法について説明しているチュートリアルまたはビデオ チュートリアルに関する提案があれば、喜んで受け入れます。あるいは、これを実装するためのより良い方法があれば、それも喜んで調べます。

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

entity-framework - エンティティ フレームワークと UPDATE CASCADE

ここでちょっとがっかり。エンティティ フレームワークでカスケード更新をサポートする方法を見つけようとしていますが、組み込みの方法はないようです。ネットでの調査によると、基本的に誰もが主キーの値を変更するべきではないと言っていますが、変更する必要がある正当なケースもあります (たとえば、主キーとしての UPC 値や、現在 UPC バーコードが大きくなっているということは、更新を意味する)既存のものと適切な外部キー関係の維持)。

1 つの方法は、SavingChanges イベントを利用して、主キー フィールドが変更されているかどうかを確認し、変更されている場合は、ナビゲーション プロパティをトラバースしてサブ テーブルをそのように更新することです。

これは、理論的には機能します。しかし、それは面倒に聞こえます。誰でも良いアイデアがありますか?ほとんどの人がそれをしないという理由だけで、ビルがこのようなものをフレームワークから除外したとは信じられません。SQL Serverはまだそれをサポートしています...

どうも!

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

entity-framework - Entity Frameworkで「不均一な」継承に継承されたプロパティを含める方法は?

次のモデルがあります(簡略化):

「グラフィカルに」表現されているように:

CartItem のタイプが HotelCartItem の場合は、すべての CartItem をロードし、Hotel クラスのデータを含めます。

これが私がやろうとしている方法ですが、「「ホテル」という名前のナビゲーションプロパティを宣言していません」で失敗します。

タイプ Hotel のCartItems.Include("Hotel")の Hotel プロパティを省略すると、null になります。

私の質問:
これを回避する方法はありますか?

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

.net - Entity Framework - 継承のクエリ

宿題としてタスクトラッカーを作るように言われました。この割り当てのエンティティ フレームワーク、特に継承の側面の使用方法を学びたいと思いました。プロジェクト、タスク、サブタスクにはすべて似たようなプロパティがたくさんあるので、継承を使おうと思ったのですが、特定のプロジェクトを照会する方法がわかりません。

Visual Studio で次の図を作成しました。

エンティティ図

次に、このモデルからデータベースを作成しました。従業員プロジェクトを取得するにはどうすればよいですか?

私はこれから始めました:

ただし((Employee)employee).Projects、利用できませんが、((Employee)employee).Itemsあります。((Employee)employee).Items.Projectsも利用できません。従業員のプロジェクトを取得するにはどうすればよいですか? このために、 Navigation プロパティを Employeesに追加する必要がありますか?