Class LinkOwnerDestroyAttribute
Last update: 16.07.2025Namespace: VM.Models.Pre
Assembly: VM.Models.Pre.Aspects.dll
[Aspect(Scope.PerInstance)]
[AttributeUsage(AttributeTargets.Property, AllowMultiple = true, Inherited = true)]
[Injection(typeof(LinkOwnerDestroyAttribute))]
[Mixin(typeof(ILinkOwnerDestroyOwner))]
public class LinkOwnerDestroyAttribute : LinkDestroyAttribute, ILinkUpdateOwner, ILinkDestroyOwner, ILinkOwnerDestroyOwner
Inheritance
object ← Attribute ← LinkBaseAttribute ← LinkUpdateAttribute ← LinkDestroyAttribute ← LinkOwnerDestroyAttribute
Implements
ILinkUpdateOwner, ILinkDestroyOwner, ILinkOwnerDestroyOwner
Inherited Members
LinkDestroyAttribute.__a$\_instance](VM.Models.Pre.LinkDestroyAttribute.md\#VM\_Models\_Pre\_LinkDestroyAttribute\_\_\_a\_\_instance),
[LinkDestroyAttribute.AfterSetter\(object, string, object\[\], Attribute\[\]\)](VM.Models.Pre.LinkDestroyAttribute.md\#VM\_Models\_Pre\_LinkDestroyAttribute\_AfterSetter\_System\_Object\_System\_String\_System\_Object\_\_\_System\_Attribute\_\_\_),
[LinkDestroyAttribute.BeforeSetter\(string\)](VM.Models.Pre.LinkDestroyAttribute.md\#VM\_Models\_Pre\_LinkDestroyAttribute\_BeforeSetter\_System\_String\_),
[LinkDestroyAttribute.GetDefaultAfterBehavior\(object, EventPattern<linkeventargs>\)](VM.Models.Pre.LinkDestroyAttribute.md\#VM\_Models\_Pre\_LinkDestroyAttribute\_GetDefaultAfterBehavior\_System\_Object\_System\_Reactive\_EventPattern\_VM\_Managed\_LinkEventArgs\_\_),
[LinkDestroyAttribute.GetDefaultBeforeBehavior\(object, EventPattern<linkeventargs>\)](VM.Models.Pre.LinkDestroyAttribute.md\#VM\_Models\_Pre\_LinkDestroyAttribute\_GetDefaultBeforeBehavior\_System\_Object\_System\_Reactive\_EventPattern\_VM\_Managed\_LinkEventArgs\_\_),
[LinkDestroyAttribute.InitializeProperty\(object, IEnumerable<propertyinfo>\)](VM.Models.Pre.LinkDestroyAttribute.md\#VM\_Models\_Pre\_LinkDestroyAttribute\_InitializeProperty\_System\_Object\_System\_Collections\_Generic\_IEnumerable\_System\_Reflection\_PropertyInfo\_\_),
[LinkDestroyAttribute.AfterEventName](VM.Models.Pre.LinkDestroyAttribute.md\#VM\_Models\_Pre\_LinkDestroyAttribute\_AfterEventName),
[LinkDestroyAttribute.BeforeEventName](VM.Models.Pre.LinkDestroyAttribute.md\#VM\_Models\_Pre\_LinkDestroyAttribute\_BeforeEventName),
[LinkUpdateAttribute.\_\_a$_instance,
LinkUpdateAttribute.AfterSetter(object, string, object[], Attribute[]),
LinkUpdateAttribute.BeforeSetter(string),
LinkUpdateAttribute.GetBehavior
Extension Methods
LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType),
LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType),
LinkPropertyItemCache.GetLinkedObjects
Constructors
LinkOwnerDestroyAttribute()
public LinkOwnerDestroyAttribute()
LinkOwnerDestroyAttribute(Type)
public LinkOwnerDestroyAttribute(Type behaviorType)
Parameters
behaviorType Type
LinkOwnerDestroyAttribute(LinkBehaviorType, params string[])
public LinkOwnerDestroyAttribute(LinkBehaviorType linkBehaviorType, params string[] behaviorNames)
Parameters
linkBehaviorType LinkBehaviorType
behaviorNames string[]
Fields
__a$_instance
public static readonly LinkOwnerDestroyAttribute __a$_instance
Field Value
Methods
AfterSetter(object, string, object[], Attribute[])
[Advice(Kind.After, Targets = Target.AnyAccess|Target.Setter)]
public override void AfterSetter(object owner, string propertyName, object[] values, Attribute[] triggers)
Parameters
owner object
propertyName string
values object[]
triggers Attribute[]
BeforeSetter(string)
[Advice(Kind.Before, Targets = Target.AnyAccess|Target.Setter)]
public override void BeforeSetter(string propertyName)
Parameters
propertyName string
InitializeProperty(object, IEnumerable)
protected override void InitializeProperty(object owner, IEnumerable<propertyinfo> propertyInfos)
Parameters
owner object
propertyInfos IEnumerablePropertyInfo>