次の方法で共有


EntityReference<TEntity>.Attach(TEntity) メソッド

定義

オブジェクト コンテキストで 2 つのオブジェクト間の多対一または一対一のリレーションシップを作成します。

public:
 void Attach(TEntity entity);
public void Attach (TEntity entity);
override this.Attach : 'Entity -> unit
Public Sub Attach (entity As TEntity)

パラメーター

entity
TEntity

アタッチされるオブジェクト。

例外

entitynull である場合。

entity を現在のリレーション端に関連付けられない場合。 これは、概念スキーマのアソシエーションで 2 つの型の間のリレーションシップがサポートされていない場合に発生する可能性があります。

注釈

Attach メソッドは、オブジェクトと関連オブジェクトの両方が既にオブジェクト コンテキストにアタッチされている場合にそれらのオブジェクト間のリレーションシップを定義するために使用されます。 関連オブジェクトがまだオブジェクト コンテキストにアタッチされていない場合は、Value プロパティに関連オブジェクトを設定します。 また、両方のオブジェクトがデタッチされている場合は、Value プロパティに関連オブジェクトを設定した後に、オブジェクト グラフのルート オブジェクトをアタッチしてリレーションシップを定義することもできます。 詳しくは、「オブジェクトのアタッチとデタッチ」をご覧ください。

この EntityReference<TEntity> に関連付けられたオブジェクトおよびそれにアタッチされているすべてのオブジェクトは、状態が Unchanged または Modified である必要があります。

Deleted 状態のオブジェクトは、ObjectStateManager で既にリレーションシップ インスタンスが追跡されている場合にのみアタッチできます。

適用対象