次の方法で共有


ObjectStateManager.ChangeRelationshipState メソッド

定義

オーバーロード

ChangeRelationshipState(Object, Object, String, EntityState)

関連する 2 つのオブジェクトとナビゲーション プロパティの名前に基づいて、2 つのエンティティ オブジェクト間の指定されたリレーションシップの状態を変更します。

ChangeRelationshipState(Object, Object, String, String, EntityState)

関連する 2 つのオブジェクトとリレーションシップのプロパティに基づいて、2 つのエンティティ オブジェクト間の指定されたリレーションシップの状態を変更します。

ChangeRelationshipState<TEntity>(TEntity, Object, Expression<Func<TEntity,Object>>, EntityState)

関連する 2 つのオブジェクトとナビゲーション プロパティを定義する LINQ 式とに基づいて、2 つのエンティティ オブジェクト間の指定されたリレーションシップの状態を変更します。

ChangeRelationshipState(Object, Object, String, EntityState)

関連する 2 つのオブジェクトとナビゲーション プロパティの名前に基づいて、2 つのエンティティ オブジェクト間の指定されたリレーションシップの状態を変更します。

public virtual System.Data.Entity.Core.Objects.ObjectStateEntry ChangeRelationshipState (object sourceEntity, object targetEntity, string navigationProperty, System.Data.Entity.EntityState relationshipState);
abstract member ChangeRelationshipState : obj * obj * string * System.Data.Entity.EntityState -> System.Data.Entity.Core.Objects.ObjectStateEntry
override this.ChangeRelationshipState : obj * obj * string * System.Data.Entity.EntityState -> System.Data.Entity.Core.Objects.ObjectStateEntry
Public Overridable Function ChangeRelationshipState (sourceEntity As Object, targetEntity As Object, navigationProperty As String, relationshipState As EntityState) As ObjectStateEntry

パラメーター

sourceEntity
Object

リレーションシップの一方の端にあるソース エンティティのオブジェクト インスタンスまたは EntityKey

targetEntity
Object

リレーションシップのもう一方の端にあるターゲット エンティティのオブジェクト インスタンスまたは EntityKey

navigationProperty
String

指定したターゲット を返すソースのナビゲーション プロパティの名前。

relationshipState
EntityState

指定リレーションシップに要求する EntityState

戻り値

変更されたリレーションシップの ObjectStateEntry

例外

ソースまたはターゲットが null の場合。

リレーションシップの状態を、 以外Deletedの状態に変更しようとしたとき、またはDetachedソースまたはターゲットのいずれかが状態にあるDeleted場合、またはソースまたはターゲットのいずれかが状態にある場合、Detachedまたは状態が有効なEntityState値でない場合にAdded、リレーションシップの状態を 以外の状態に変更しようとするとき

適用対象

ChangeRelationshipState(Object, Object, String, String, EntityState)

関連する 2 つのオブジェクトとリレーションシップのプロパティに基づいて、2 つのエンティティ オブジェクト間の指定されたリレーションシップの状態を変更します。

public virtual System.Data.Entity.Core.Objects.ObjectStateEntry ChangeRelationshipState (object sourceEntity, object targetEntity, string relationshipName, string targetRoleName, System.Data.Entity.EntityState relationshipState);
abstract member ChangeRelationshipState : obj * obj * string * string * System.Data.Entity.EntityState -> System.Data.Entity.Core.Objects.ObjectStateEntry
override this.ChangeRelationshipState : obj * obj * string * string * System.Data.Entity.EntityState -> System.Data.Entity.Core.Objects.ObjectStateEntry
Public Overridable Function ChangeRelationshipState (sourceEntity As Object, targetEntity As Object, relationshipName As String, targetRoleName As String, relationshipState As EntityState) As ObjectStateEntry

パラメーター

sourceEntity
Object

リレーションシップの一方の端にあるソース エンティティのオブジェクト インスタンスまたは EntityKey

targetEntity
Object

リレーションシップのもう一方の端にあるターゲット エンティティのオブジェクト インスタンスまたは EntityKey

relationshipName
String

リレーションシップの名前。

targetRoleName
String

リレーションシップのターゲット端のロール名。

relationshipState
EntityState

指定リレーションシップに要求する EntityState

戻り値

変更されたリレーションシップの ObjectStateEntry

例外

ソースまたはターゲットが null の場合。

リレーションシップの状態を以外Deletedの状態に変更しようとするとき、またはソースまたはDetachedターゲットのいずれかが状態にあるDeleted場合、またはソースまたはターゲットのいずれかが状態にある場合、Detachedまたは状態が有効なEntityState値ではない場合AddedAdded、リレーションシップの状態を 以外の状態に変更しようとするとき。

適用対象

ChangeRelationshipState<TEntity>(TEntity, Object, Expression<Func<TEntity,Object>>, EntityState)

関連する 2 つのオブジェクトとナビゲーション プロパティを定義する LINQ 式とに基づいて、2 つのエンティティ オブジェクト間の指定されたリレーションシップの状態を変更します。

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public virtual System.Data.Entity.Core.Objects.ObjectStateEntry ChangeRelationshipState<TEntity> (TEntity sourceEntity, object targetEntity, System.Linq.Expressions.Expression<Func<TEntity,object>> navigationPropertySelector, System.Data.Entity.EntityState relationshipState) where TEntity : class;
abstract member ChangeRelationshipState : 'Entity * obj * System.Linq.Expressions.Expression<Func<'Entity, obj>> * System.Data.Entity.EntityState -> System.Data.Entity.Core.Objects.ObjectStateEntry (requires 'Entity : null)
override this.ChangeRelationshipState : 'Entity * obj * System.Linq.Expressions.Expression<Func<'Entity, obj>> * System.Data.Entity.EntityState -> System.Data.Entity.Core.Objects.ObjectStateEntry (requires 'Entity : null)
Public Overridable Function ChangeRelationshipState(Of TEntity As Class) (sourceEntity As TEntity, targetEntity As Object, navigationPropertySelector As Expression(Of Func(Of TEntity, Object)), relationshipState As EntityState) As ObjectStateEntry

型パラメーター

TEntity

ソース オブジェクトのエンティティ型。

パラメーター

sourceEntity
TEntity

リレーションシップの一方の端にあるソース エンティティのオブジェクト インスタンスまたは EntityKey

targetEntity
Object

リレーションシップのもう一方の端にあるターゲット エンティティのオブジェクト インスタンスまたは EntityKey

navigationPropertySelector
Expression<Func<TEntity,Object>>

指定したターゲット を返すソースのナビゲーション プロパティを選択する LINQ 式。

relationshipState
EntityState

指定リレーションシップに要求する EntityState

戻り値

変更されたリレーションシップの ObjectStateEntry

属性

例外

ソース、ターゲット、またはセレクターが null の場合。

セレクターの形式が正しくないか、ナビゲーション プロパティを返すことができません。

リレーションシップの状態を以外Deletedの状態に変更しようとするとき、またはソースまたはDetachedターゲットのいずれかが状態にあるDeleted場合、またはソースまたはターゲットのいずれかが状態にある場合、Detachedまたは状態が有効なEntityState値ではない場合AddedAdded、リレーションシップの状態を 以外の状態に変更しようとするとき。

適用対象