Namespace Metalama.Extensions.DependencyInjection.Implementation
Classes
DefaultDependencyInjectionFramework
The default implementation of IDependencyInjectionFramework. It pulls dependencies from all constructors and use Func<TResult> to accept lazy dependencies.
DefaultDependencyInjectionStrategy
The default implementation of the IntroduceDependency(IntroduceDependencyContext, IAspectBuilder<INamedType>) interface method. It is designed to be easily extended and overwritten.
DefaultPullStrategy
The default implementation of IPullStrategy.
DependencyContext
The base class for IntroduceDependencyContext and ImplementDependencyContext, which represent the context in which a dependency is being implemented or introduced.
ImplementDependencyContext
Represents the context in which the an aspect dependency advice is weaved.
IntroduceDependencyContext
Represents the context in which the an aspect dependency advice is weaved.
LazyDependencyInjectionStrategy
A dependency implementation strategy that resolves the dependencies the first time they are used and pull a Func<TResult> from the constructor.
LazyDependencyInjectionStrategy.TemplateArgs
ParameterSpecification
Specifies a constructor parameter.
Interfaces
IDependencyInjectionFramework
Interface that dependency injection framework adapters must implement to handle the IntroduceDependencyAttribute advice. An implementation typically also implements IPullStrategy.
IPullStrategy
Interface used by DefaultDependencyInjectionStrategy to pull a field or property from the constructor. This interface is instantiated from GetPullStrategy(IFieldOrProperty). You must override this method if you want to provide a custom implementation of IPullStrategy. The default implementation is DefaultPullStrategy.