Skip to main content

Motion Standalone Preprocessor C# library 2025 R2

Class LinkUpdateAttribute

Last update: 16.07.2025

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

objectAttributeLinkBaseAttributeLinkUpdateAttribute

Derived

LinkDestroyAttribute

Implements

ILinkUpdateOwner

Inherited Members

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

Extension Methods

LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType), LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType), LinkPropertyItemCache.GetLinkedObjects(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(object, string, object, EventPattern, 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

attribute TAttribute

isSwap bool

Returns

Action

Type Parameters

TAttribute

GetAfterSubscriber(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(object, string, object, EventPattern, 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

attribute TAttribute

isSwap bool

Returns

Action

Type Parameters

TAttribute

GetBeforeSubscriber(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(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)

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

Parameters

source object

eventPattern EventPattern

Returns

Action

GetDefaultBeforeBehavior(object, EventPattern)

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

Parameters

source object

eventPattern EventPattern

Returns

Action

InitializeProperty(object, IEnumerable)

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

Parameters

owner object

propertyInfos IEnumerablePropertyInfo&gt;

InitializeProperty(object, IEnumerable, bool)

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

Parameters

owner object

propertyInfos IEnumerablePropertyInfo&gt;

isSwap bool

Type Parameters

TAttribute

Subscribe(object, string, object, IEnumerable, 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 IEnumerableAttribute&gt;

isSwap bool

Type Parameters

TAttribute

Connect with Ansys