Skip to main content

Motion Standalone Preprocessor C# library 2026 R1

Class LinkUpdateAttribute

Last update: 09.03.2026

Namespace: VM.Models.Pre
Assembly: VM.Models.Pre.Aspects.dll

[Aspect(Scope.PerInstance)]
[AttributeUsage(AttributeTargets.Property, AllowMultiple = true, Inherited = true)]
[Injection(typeof(LinkUpdateAttribute))]
[Mixin(typeof(ILinkUpdateOwner))]
public class LinkUpdateAttribute : LinkBaseAttribute, ILinkUpdateOwner

Inheritance

object ← Attribute ← LinkBaseAttribute ← LinkUpdateAttribute

Derived

LinkDestroyAttribute

Implements

ILinkUpdateOwner

Inherited Members

LinkBaseAttribute.Dispose(), LinkBaseAttribute.Initialize(object), LinkBaseAttribute.AddCache(string, IDisposable), LinkBaseAttribute.DisposeManagedResources(), LinkBaseAttribute.InitializeProperty(object, IEnumerable<PropertyInfo>), LinkBaseAttribute.Unsubscribe(string), LinkBaseAttribute.CacheItems, LinkBaseAttribute.IsCacheEmpty

Extension Methods

LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType), LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType), LinkPropertyItemCache.GetLinkedObjects<T>(object, LinkPropertyType)

Constructors

LinkUpdateAttribute()

public LinkUpdateAttribute()

LinkUpdateAttribute(Type)

public LinkUpdateAttribute(Type behaviorType)

Parameters

behaviorType Type

LinkUpdateAttribute(LinkBehaviorType, params string[])

public LinkUpdateAttribute(LinkBehaviorType linkBehaviorType, params string[] behaviorNames)

Parameters

linkBehaviorType LinkBehaviorType

behaviorNames string[]

Fields

__a$_instance

public static readonly LinkUpdateAttribute __a$_instance

Field Value

LinkUpdateAttribute

Properties

AfterEventName

protected virtual string AfterEventName { get; }

Property Value

string

BeforeEventName

protected virtual string BeforeEventName { get; }

Property Value

string

TypeId

public override object TypeId { get; }

Property Value

object

Methods

AfterSetter(object, string, object[], Attribute[])

[Advice(Kind.After, Targets = Target.AnyAccess|Target.Setter)]
public virtual 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 virtual void BeforeSetter(string propertyName)

Parameters

propertyName string

GetAfterBehavior<TAttribute>(object, string, object, EventPattern<LinkEventArgs>, TAttribute, bool)

protected Action GetAfterBehavior<TAttribute>(object owner, string propertyName, object link, EventPattern<LinkEventArgs> eventPattern, TAttribute attribute, bool isSwap) where TAttribute : LinkUpdateAttribute

Parameters

owner object

propertyName string

link object

eventPattern EventPattern<LinkEventArgs>

attribute TAttribute

isSwap bool

Returns

Action

Type Parameters

TAttribute

GetAfterSubscriber<TAttribute>(object, string, object, TAttribute, bool)

protected IDisposable GetAfterSubscriber<TAttribute>(object owner, string propertyName, object link, TAttribute linkAttribute, bool isSwap) where TAttribute : LinkUpdateAttribute

Parameters

owner object

propertyName string

link object

linkAttribute TAttribute

isSwap bool

Returns

IDisposable

Type Parameters

TAttribute

GetBeforeBehavior<TAttribute>(object, string, object, EventPattern<LinkEventArgs>, TAttribute, bool)

protected Action GetBeforeBehavior<TAttribute>(object owner, string propertyName, object link, EventPattern<LinkEventArgs> eventPattern, TAttribute attribute, bool isSwap) where TAttribute : LinkUpdateAttribute

Parameters

owner object

propertyName string

link object

eventPattern EventPattern<LinkEventArgs>

attribute TAttribute

isSwap bool

Returns

Action

Type Parameters

TAttribute

GetBeforeSubscriber<TAttribute>(object, string, object, TAttribute, bool)

protected IDisposable GetBeforeSubscriber<TAttribute>(object owner, string propertyName, object link, TAttribute linkAttribute, bool isSwap) where TAttribute : LinkUpdateAttribute

Parameters

owner object

propertyName string

link object

linkAttribute TAttribute

isSwap bool

Returns

IDisposable

Type Parameters

TAttribute

GetBehavior<TAttribute>(object, object, string, object, TAttribute, bool)

protected static Action GetBehavior<TAttribute>(object caller, object owner, string propertyName, object link, TAttribute attribute, bool isSwap) where TAttribute : LinkUpdateAttribute

Parameters

caller object

owner object

propertyName string

link object

attribute TAttribute

isSwap bool

Returns

Action

Type Parameters

TAttribute

GetDefaultAfterBehavior(object, EventPattern<LinkEventArgs>)

protected virtual Action GetDefaultAfterBehavior(object source, EventPattern<LinkEventArgs> eventPattern)

Parameters

source object

eventPattern EventPattern<LinkEventArgs>

Returns

Action

GetDefaultBeforeBehavior(object, EventPattern<LinkEventArgs>)

protected virtual Action GetDefaultBeforeBehavior(object source, EventPattern<LinkEventArgs> eventPattern)

Parameters

source object

eventPattern EventPattern<LinkEventArgs>

Returns

Action

InitializeProperty(object, IEnumerable<PropertyInfo>)

protected override void InitializeProperty(object owner, IEnumerable<PropertyInfo> propertyInfos)

Parameters

owner object

propertyInfos IEnumerable<PropertyInfo>

InitializeProperty<TAttribute>(object, IEnumerable<PropertyInfo>, bool)

protected void InitializeProperty<TAttribute>(object owner, IEnumerable<PropertyInfo> propertyInfos, bool isSwap = false) where TAttribute : LinkUpdateAttribute

Parameters

owner object

propertyInfos IEnumerable<PropertyInfo>

isSwap bool

Type Parameters

TAttribute

Subscribe<TAttribute>(object, string, object, IEnumerable<Attribute>, bool)

protected void Subscribe<TAttribute>(object owner, string propertyName, object link, IEnumerable<Attribute> attributes, bool isSwap = false) where TAttribute : LinkUpdateAttribute

Parameters

owner object

propertyName string

link object

attributes IEnumerable<Attribute>

isSwap bool

Type Parameters

TAttribute

Connect with Ansys