Partager via


ObjectStateManager.ChangeRelationshipState<TEntity>, méthode (TEntity, Object, Expression<Func<TEntity, Object>>, EntityState)

[Cette page concerne Entity Framework version 6. La dernière version est disponible sous le nom de package 'Entity Framework' NuGet. Pour plus d'informations sur Entity Framework, consultez msdn.com/data/ef.]

Modifie l'état de la relation entre deux objets entités spécifiée selon les deux objets connexes et une expression LINQ qui définit la propriété de navigation.

Espace de noms :  System.Data.Entity.Core.Objects
Assembly :  EntityFramework (dans EntityFramework.dll)

Syntaxe

'Déclaration
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
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
'Utilisation
Dim instance As ObjectStateManager 
Dim sourceEntity As TEntity
Dim targetEntity As Object 
Dim navigationPropertySelector As Expression(Of Func(Of TEntity, Object))
Dim relationshipState As EntityState 
Dim returnValue As ObjectStateEntry 

returnValue = instance.ChangeRelationshipState(sourceEntity, _
    targetEntity, navigationPropertySelector, _
    relationshipState)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public virtual ObjectStateEntry ChangeRelationshipState<TEntity>(
    TEntity sourceEntity,
    Object targetEntity,
    Expression<Func<TEntity, Object>> navigationPropertySelector,
    EntityState relationshipState
)
where TEntity : class
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
public:
generic<typename TEntity>
where TEntity : ref class 
virtual ObjectStateEntry^ ChangeRelationshipState(
    TEntity sourceEntity, 
    Object^ targetEntity, 
    Expression<Func<TEntity, Object^>^>^ navigationPropertySelector, 
    EntityState relationshipState
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
abstract ChangeRelationshipState : 
        sourceEntity:'TEntity * 
        targetEntity:Object * 
        navigationPropertySelector:Expression<Func<'TEntity, Object>> * 
        relationshipState:EntityState -> ObjectStateEntry   when 'TEntity : not struct
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
override ChangeRelationshipState : 
        sourceEntity:'TEntity * 
        targetEntity:Object * 
        navigationPropertySelector:Expression<Func<'TEntity, Object>> * 
        relationshipState:EntityState -> ObjectStateEntry   when 'TEntity : not struct
JScript does not support generic types and methods.

Paramètres de type

  • TEntity
    Type d'entité de l'objet source.

Paramètres

  • sourceEntity
    Type : TEntity
    Instance d'objet ou EntityKey de l'entité source en terminaison de la relation.
  • targetEntity
    Type : System.Object
    Instance d'objet ou EntityKey de l'entité cible à l'autre extrémité de la relation.

Valeur de retour

Type : System.Data.Entity.Core.Objects.ObjectStateEntry
ObjectStateEntry pour la relation ayant changé.

Exceptions

Exception Condition
ArgumentNullException

Lorsque la source, la cible ou le sélecteur a la valeur Null.

ArgumentException

le sélecteur est incorrect ou ne peut pas retourner de propriété de navigation.

InvalidOperationException

Lorsque vous essayez de modifier l'état de la relation vers un état autre que Deleted ou Detached, que la source ou la cible se trouve dans un état Deleted, que vous essayez de modifier l'état de la relation vers un état autre que Added ou Detached, que la source ou la cible se trouve dans un état Added ou que l'état n'est pas une valeur EntityState valide.

Voir aussi

Référence

ObjectStateManager Classe

Surcharge ChangeRelationshipState

Espace de noms System.Data.Entity.Core.Objects