問題タブ [ef-fluent-api]

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

.net - データベース内の多対多からドメイン内の 1 対多へのマッピング

Entity Framework でマッピングの課題があります。

データベースでは、次のように両方の PK を持つ中間テーブルを持つ 2 つのテーブル間に多対多の関係があります。

従属中間テーブルを使用した多対多

次のように、この関係を 1 対多のドメイン エンティティの関係にマップする必要があります。

一対多のエンティティ関係

Fluent API を使用してこれをマップするにはどうすればよいですか?

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

c# - Entity Framework での基本エンティティの流暢な構成

私は次の BaseEntity を持っています

私の他のすべてのエンティティはそこから派生しています。ここで、DataAnnotations の代わりに流暢な構成を使用したいと思います。すべての構成で 2 つの文字列プロパティの MaxLength を構成する必要がありDbModelBuilderますか?

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

c# - Entity Frameworkでオブジェクト型プロパティをvarbinary(MAX)にマッピングする

type のプロパティを持つ型がある状況がありますobject

このタイプは次のようにする必要があります。

  1. Entity Frameworkとしてデータベースに使用して保存しましたbyte[](シリアライゼーションロジックを理解しました)
  2. WCF 経由で送信 (KnownType属性を使用します)

objectプロパティを確実にマッピングして、ストレージ用にバイト配列に変換するにはどうすればよいですか?

注意:objectプロパティは値型になります (非複雑)

データベースに保存するための別のタイプを作成することを考えました。

リレーションシップ マッピングを定義しながら、タイプ間で変換/変換するにはどうすればよいですか?

これには、保存時に何らかの傍受が含まれますか?

背中を痛めずに考えられる最善の解決策は、単純にシリアル化されたデータを DB に格納することです。

C#になんらかの形式があればproperty covariance、おそらくこれはより簡単に機能したでしょう。私の知る限り、それは存在しません。私が使用できるエレガントな代替手段があれば、あなたの洞察に感謝します.

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

asp.net - エンティティ フレームワーク コードの最初の流暢な API で Single() が使用されている場合、Include() が使用できない理由

熱心な読み込みで Single() の後に Include() を使用できないのはなぜですか。たとえば、次のスニペットでは、Include は使用できません。

ただし、Include() の直後に Single() がある場合は機能します。

このようにして、多くの不要な関連データが返されます。以下は私が最終的に得た方法です:

これが唯一の解決策ですか?

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

c# - Entity Framework のオプションの一対多リレーションシップ

オプションの 1 対多の関係を機能させるのに問題があります。

私のモデルは次のとおりです。

Departmentに 0 または 1を割り当てたいPerson。割り当てられると、 はの-List にPerson表示されます。MembersDepartment

Person次のように Fluent API を使用して構成しています。

Departmentの代わりに を構成して、別の方法も試しましたPerson

ただし、どちらの方法でも例外が発生します。

タイプ 'Person' と 'Department' の間の関連付けのプリンシパル エンドを特定できません。この関連付けのプリンシパル エンドは、リレーションシップ fluent API またはデータ アノテーションのいずれかを使用して明示的に構成する必要があります。

そのように両方を同時に構成すると、次のようになります。

タイプ 'Person' で宣言されたナビゲーション プロパティ 'Department' は、競合する多重度で構成されています。

別のエンティティ タイプの設定と同じ設定を使用してもPerson機能しますが、そのエンティティ タイプはそれ自体を参照します。

この関係を適切に構成するにはどうすればよいですか?