Поделиться через


ObjectStateManager.ChangeRelationshipState Метод

Определение

Изменяет состояние указанного отношения между двумя объектами сущностей.

Перегрузки

ChangeRelationshipState(Object, Object, String, EntityState)

Изменяет состояние отношения между двумя объектами сущностей, заданное на основании двух связанных объектов и имени свойства навигации.

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

Изменяет состояние отношения между двумя объектами сущностей, заданное на основании двух связанных объектов и свойств отношения.

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

Изменяет состояние отношения между двумя объектами сущностей, заданное на основании двух связанных объектов и выражения LINQ, определяющего свойство навигации.

Комментарии

Этот метод не поддерживается для связей, основанных на сопоставлении на основе внешнего ключа.

ChangeRelationshipState(Object, Object, String, EntityState)

Изменяет состояние отношения между двумя объектами сущностей, заданное на основании двух связанных объектов и имени свойства навигации.

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

Параметры

sourceEntity
Object

Экземпляр объекта или объект EntityKey исходной сущности с одной стороны отношения.

targetEntity
Object

Экземпляр объекта или объект EntityKey целевой сущности с другой стороны отношения.

navigationProperty
String

Имя свойства навигации исходного объекта sourceEntity, возвращающего указанный объект targetEntity.

relationshipState
EntityState

Запрошенное состояние EntityState указанного отношения.

Возвращаемое значение

Объект ObjectStateEntry для измененного отношения.

Исключения

Если source или target имеет значение null.

При попытке изменить состояние связи на состояние, отличное от Deleted или Detached, когда source или target находится в состоянии Deleted.

-или-

При попытке изменить состояние связи на состояние, отличное от Added или Detached, когда source или target находится в состоянии Added.

-или-

Когда state не является допустимым значением EntityState.

Комментарии

Записи для объектов на обоих концах указанной связи должны существовать в ObjectStateManager.

Примечание

Этот метод не поддерживается для связей, основанных на сопоставлении на основе внешнего ключа.

Применяется к

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

Изменяет состояние отношения между двумя объектами сущностей, заданное на основании двух связанных объектов и свойств отношения.

public:
 System::Data::Objects::ObjectStateEntry ^ ChangeRelationshipState(System::Object ^ sourceEntity, System::Object ^ targetEntity, System::String ^ relationshipName, System::String ^ targetRoleName, System::Data::EntityState relationshipState);
public System.Data.Objects.ObjectStateEntry ChangeRelationshipState (object sourceEntity, object targetEntity, string relationshipName, string targetRoleName, System.Data.EntityState relationshipState);
member this.ChangeRelationshipState : obj * obj * string * string * System.Data.EntityState -> System.Data.Objects.ObjectStateEntry
Public 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

Имя роли на стороне targetEntity отношения.

relationshipState
EntityState

Запрошенное состояние EntityState указанного отношения.

Возвращаемое значение

Объект ObjectStateEntry для измененного отношения.

Исключения

Если source или target имеет значение null.

При попытке изменить состояние связи на состояние, отличное от Deleted или Detached, когда source или target находится в состоянии Deleted.

-или-

При попытке изменить состояние связи на состояние, отличное от Added или Detached, когда source или target находится в состоянии Added.

-или-

Когда state не является допустимым значением EntityState.

Комментарии

Записи для объектов на обоих концах указанной связи должны существовать в ObjectStateManager.

Примечание

Этот метод не поддерживается для связей, основанных на связи внешнего ключа. Дополнительные сведения см. в разделе Определение связей и управление ими.

Применяется к

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

Изменяет состояние отношения между двумя объектами сущностей, заданное на основании двух связанных объектов и выражения LINQ, определяющего свойство навигации.

public:
generic <typename TEntity>
 where TEntity : class System::Data::Objects::ObjectStateEntry ^ ChangeRelationshipState(TEntity sourceEntity, System::Object ^ targetEntity, System::Linq::Expressions::Expression<Func<TEntity, System::Object ^> ^> ^ navigationPropertySelector, System::Data::EntityState relationshipState);
public System.Data.Objects.ObjectStateEntry ChangeRelationshipState<TEntity> (TEntity sourceEntity, object targetEntity, System.Linq.Expressions.Expression<Func<TEntity,object>> navigationPropertySelector, System.Data.EntityState relationshipState) where TEntity : class;
member this.ChangeRelationshipState : 'Entity * obj * System.Linq.Expressions.Expression<Func<'Entity, obj>> * System.Data.EntityState -> System.Data.Objects.ObjectStateEntry (requires 'Entity : null)
Public 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.

Параметры

sourceEntity
TEntity

Экземпляр объекта или объект EntityKey исходной сущности с одной стороны отношения.

targetEntity
Object

Экземпляр объекта или объект EntityKey целевой сущности с другой стороны отношения.

navigationPropertySelector
Expression<Func<TEntity,Object>>

Выражение LINQ, выбирающее свойство навигации исходного объекта sourceEntity, возвращающего указанный объект targetEntity.

relationshipState
EntityState

Запрошенное состояние EntityState указанного отношения.

Возвращаемое значение

Объект ObjectStateEntry для измененного отношения.

Исключения

Когда source, target или selector имеет значение null.

selector имеет неверный формат или не может возвратить свойство навигации.

При попытке изменить состояние связи на состояние, отличное от Deleted или Detached, когда source или target находится в состоянии Deleted.

-или-

При попытке изменить состояние связи на состояние, отличное от Added или Detached, когда source или target находится в состоянии Added.

-или-

Когда state не является допустимым значением EntityState.

Комментарии

Записи для объектов на обоих концах указанной связи должны существовать в ObjectStateManager.

Примечание

Этот метод не поддерживается для связей, основанных на связи внешнего ключа.

Применяется к