2

ノードとエッジを使用してグラフのデータモデルを作成しようとしています。Edgeにプロパティが含まれていない場合は、ノードからそれ自体への多対多の関連付けを簡単に作成できます。ただし、距離など、いくつかのプロパティをエッジに保存したいと思います。別のエンティティを作成しようとしましたが、エッジとノードの関係を宣言する方法が見つかりませんでした。モデルファーストで可能ですか?どのように?

4

1 に答える 1

7

マップされたジャンクションテーブルとの自己参照多対多関係をモデル化するには、ノードからエッジへの2つの1対多の関連付けを作成する必要があります。グラフ理論の観点から、EFモデルは有向グラフを作成するため、AからBへのエッジとBからAへのエッジの間で異なります。

2つのエンティティとそのプロパティから始めます。

ここに画像の説明を入力してください

ツールボックスから最初の関連付けをドラッグします。ノードから開始し、関連付けをエッジにドラッグします。これにより、ノードとエッジの間に1対多の関係が作成されます。「発信」エッジ用に作成されたナビゲーションのプロパティを構成します。

ここに画像の説明を入力してください

同じ方法で2番目の関連付けをドラッグし、「着信」エッジのプロパティを構成します。

ここに画像の説明を入力してください

このモデルからデータベースを生成すると、次のテーブル構造が得られます。

ここに画像の説明を入力してください

于 2012-01-28T10:05:47.423 に答える