ObjectStateManager.ChangeRelationshipState 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
更改两个实体对象之间的指定关系的状态。
重载
| 名称 | 说明 |
|---|---|
| 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
参数
- navigationProperty
- String
返回指定targetEntity属性的导航属性sourceEntity的名称。
- relationshipState
- EntityState
所 EntityState 请求的指定关系。
返回
已 ObjectStateEntry 更改的关系。
例外
何时 source 或 target 为 null.
尝试将关系的状态更改为非Deleted或处于状态的状态时Deletedsourcetarget。Detached
-或-
尝试将关系的状态更改为非Added或处于状态的状态时Addedsourcetarget。Detached
-或-
当 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
参数
- relationshipName
- String
关系的名称。
- targetRoleName
- String
关系末尾的角色名称 targetEntity 。
- relationshipState
- EntityState
所 EntityState 请求的指定关系。
返回
已 ObjectStateEntry 更改的关系。
例外
何时 source 或 target 为 null.
尝试将关系的状态更改为非Deleted或处于或处于状态的状态时Deletedsourcetarget。Detached
-或-
尝试将关系的状态更改为非Added或处于状态的状态时Addedsourcetarget。Detached
-或-
当 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 源实体。
- navigationPropertySelector
- Expression<Func<TEntity,Object>>
一个 LINQ 表达式,用于选择返回指定targetEntity对象的导航属性sourceEntity。
- relationshipState
- EntityState
所 EntityState 请求的指定关系。
返回
已 ObjectStateEntry 更改的关系。
例外
当、target或selector为null时source。
selector 格式不正确或无法返回导航属性。
尝试将关系的状态更改为非Deleted或处于或处于状态的状态时Deletedsourcetarget。Detached
-或-
尝试将关系的状态更改为非Added或处于状态的状态时Addedsourcetarget。Detached
-或-
当 state 不是有效 EntityState 值时。
注解
指定关系两端的对象条目必须存在于 ObjectStateManager。
注释
基于外键关联的关系不支持此方法。