コード例 #1
0
ファイル: RelationshipEntry.cs プロジェクト: dotnet/ef6tools
        public override void ChangeState(EntityState state)
        {
            EntityUtil.CheckValidStateForChangeRelationshipState(state, "state");

            if (State == EntityState.Detached &&
                state == EntityState.Detached)
            {
                return;
            }

            ValidateState();

            if (RelationshipWrapper.Key0 == Key0)
            {
                ObjectStateManager.ChangeRelationshipState(
                    Key0, Key1,
                    RelationshipWrapper.AssociationSet.ElementType.FullName,
                    RelationshipWrapper.AssociationEndMembers[1].Name,
                    state);
            }
            else
            {
                Debug.Assert(RelationshipWrapper.Key0 == Key1, "invalid relationship");
                ObjectStateManager.ChangeRelationshipState(
                    Key0, Key1,
                    RelationshipWrapper.AssociationSet.ElementType.FullName,
                    RelationshipWrapper.AssociationEndMembers[0].Name,
                    state);
            }
        }
コード例 #2
0
 public override void ChangeState(EntityState state)
 {
     EntityUtil.CheckValidStateForChangeRelationshipState(state, nameof(state));
     if (this.State == EntityState.Detached && state == EntityState.Detached)
     {
         return;
     }
     this.ValidateState();
     if (this.RelationshipWrapper.Key0 == this.Key0)
     {
         this.ObjectStateManager.ChangeRelationshipState((object)this.Key0, (object)this.Key1, this.RelationshipWrapper.AssociationSet.ElementType.FullName, this.RelationshipWrapper.AssociationEndMembers[1].Name, state);
     }
     else
     {
         this.ObjectStateManager.ChangeRelationshipState((object)this.Key0, (object)this.Key1, this.RelationshipWrapper.AssociationSet.ElementType.FullName, this.RelationshipWrapper.AssociationEndMembers[0].Name, state);
     }
 }