/// <inheritdoc /> protected override bool UpdateProperty(IObjectSummary obj, string name, object value) { if (base.UpdateProperty(obj, name, value)) { return(true); } if (name.Equals(InputName)) { return(true); } switch (name) { case nameof(NewName): obj.SetProperty("Name", NewName); return(true); case nameof(TagAction): if (TagAction == MembershipActions.Replace && Tags == null) { obj.GetProperty <MemberMembershipChangeTracking <Tag> >("Tags").Clear(); } return(true); case nameof(Tags): obj.GetProperty <MemberMembershipChangeTracking <Tag> >("Tags").Add(TagAction, Tags); return(true); default: return(false); } }
/// <inheritdoc /> protected override bool UpdateProperty(IObjectSummary obj, string name, object value) { if (base.UpdateProperty(obj, name, value)) { return(true); } switch (name) { case nameof(Tags): var tags = obj.GetProperty <MemberMembershipChangeTracking <Tag> >("Tags"); foreach (string t in Tags ?? Enumerable.Empty <string>()) { tags.Add(t); } return(true); default: return(false); } }