An assembly-level attribute that exports a Metalama extension type. Extensions are loaded by the Metalama pipeline and can provide additional functionality such as pipeline extensions, design-time features, or project services.
Namespace: Metalama.Framework.Engine.Extensibility
Assembly: Metalama.Framework.Sdk.dll
Syntax
[AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
public sealed class ExportExtensionAttribute : AttributeExamples
[assembly: ExportExtension(typeof(MyServiceFactory), ExtensionKinds.ServiceFactory)]Constructors
| Name | Description |
|---|---|
| ExportExtensionAttribute(Type, ExtensionKinds) | Initializes a new instance of the ExportExtensionAttribute class. |
Properties
| Name | Description |
|---|---|
| ExtensionKinds | Gets the kinds of extension represented by ExtensionType. This is a flags enum, so a single type can serve multiple purposes (e.g., both Default and ServiceFactory). |
| ExtensionType | Gets the type of the extension being exported. The type must have a public parameterless constructor and must implement the interface or base class required by the specified ExtensionKinds. |