コード例 #1
0
 /// <summary>
 /// Register a <see cref="IDependencyInstanceInfo"/> instance with the configuration. Can be overridden.
 /// </summary>
 /// <param name="info">The dependency information describing the resolving requirements.</param>
 protected virtual void OnRegisterInstance(IDependencyInstanceInfo info)
 {
     foreach (var resolvedType in info.ResolvedTypes)
     {
         _configuration.Add(resolvedType, new DependencySingletonInstance(info));
     }
 }
コード例 #2
0
        protected override void OnRegisterInstance(IDependencyInstanceInfo info)
        {
            foreach (var resolveType in info.ResolvedTypes)
            {
                _services.AddSingleton(resolveType, info.Instance);
            }

            base.OnRegisterInstance(info);
        }
コード例 #3
0
        private bool TryRegisterInstance(IDependencyInstanceInfo info)
        {
            if (info == null)
            {
                return(false);
            }

            OnRegisterInstance(info);

            return(true);
        }
コード例 #4
0
 /// <summary>
 /// Create a new instance of of the dependency resolution.
 /// </summary>
 /// <param name="info">The the <see cref="IDependencyInstanceInfo"/> that describes this resolution.</param>
 public DependencySingletonInstance(IDependencyInstanceInfo info)
 {
     _info = info ?? throw new ArgumentNullException(nameof(info));
 }