In Metalama, aspect inheritance is ruled at the class level by the InheritableAttribute custom attribute. In Metalama itself, only
Strict
inheritance is implemented. MulticastAspect and MulticastImplementation implement an emulation of the Multicast
inheritance mode by passing the proper parameter to the constructor.
Namespace: Metalama.Extensions.Multicast
Assembly: Metalama.Extensions.Multicast.dll
Syntax
[Obsolete("Inheritance is Metalama is implemented at the aspect class level with the [Inheritable] attribute, and the difference between Strict and Multicast is made by an argument passed to the MulticastImplementation constructor.")]
[RunTimeOrCompileTime]
public enum MulticastInheritance
Fields
Name | Description |
---|---|
Multicast | This inheritance mode means that multicasting is also performed after inheritance. To enable this inheritance mode with Metalama, the aspect must implement multicasting using MulticastAspect or IMulticastAttribute and MulticastImplementation, and must pass the adequate value to the constructor of these classes. |
None | No inheritance. |
Strict | This is the default inheritance mode when InheritableAttribute is added to an aspect class. It means that multicasting is performed before inheritance, but not after. There is no need of IMulticastAttribute to enable this kind of inheritance with Metalama. |