A dependency implementation strategy that resolves the dependencies the first time they are used and pull a Func<TResult> from the constructor.
Implements
Namespace: Metalama.Extensions.DependencyInjection.Implementation
Assembly: Metalama.Extensions.DependencyInjection.dll
Syntax
public class LazyDependencyInjectionStrategy : DefaultDependencyInjectionStrategy, ITemplateProvider
Constructors
Name | Description |
---|---|
LazyDependencyInjectionStrategy(DependencyProperties) |
Methods
Name | Description |
---|---|
TryImplementDependency(IAspectBuilder<IFieldOrProperty>) | |
TryIntroduceDependency(IAspectBuilder<INamedType>, out IFieldOrProperty?) | The entry point of the DefaultDependencyInjectionStrategy. Orchestrates all steps: first calls Metalama.Extensions.DependencyInjection.Implementation.DefaultDependencyInjectionStrategy.TryIntroduceFieldOrProperty(Metalama.Framework.Aspects.IAspectBuilder{Metalama.Framework.Code.INamedType},Metalama.Framework.Code.IFieldOrProperty@,System.Boolean@), then GetPullStrategy(IFieldOrProperty), then TryPullDependency(IAspectBuilder<INamedType>, IFieldOrProperty, IPullStrategy). |