コード例 #1
0
        /// <summary>
        /// 从AssemblyScanner结果注册验证器的帮助器方法
        /// </summary>
        /// <param name="services">服务的集合</param>
        /// <param name="scanResult">扫描结果</param>
        /// <param name="lifetime">验证器的生存期。默认值是暂时的</param>
        /// <returns></returns>
        private static IServiceCollection AddScanResult(this IServiceCollection services,
                                                        AssemblyScanner.AssemblyScanResult scanResult, ServiceLifetime lifetime)
        {
            services.Add(
                new ServiceDescriptor(
                    scanResult.InterfaceType,
                    scanResult.ValidatorType,
                    lifetime));


            services.Add(
                new ServiceDescriptor(
                    scanResult.ValidatorType,
                    scanResult.ValidatorType,
                    lifetime));

            return(services);
        }
コード例 #2
0
        /// <summary>
        /// Helper method to register a validator from an AssemblyScanner result
        /// </summary>
        /// <param name="services">The collection of services</param>
        /// <param name="scanResult">The scan result</param>
        /// <param name="lifetime">The lifetime of the validators. The default is transient</param>
        /// <returns></returns>
        private static IServiceCollection AddScanResult(this IServiceCollection services,
                                                        AssemblyScanner.AssemblyScanResult scanResult, ServiceLifetime lifetime)
        {
            //Register as interface
            services.Add(
                new ServiceDescriptor(
                    serviceType: scanResult.InterfaceType,
                    implementationType: scanResult.ValidatorType,
                    lifetime: lifetime));

            //Register as self
            services.Add(
                new ServiceDescriptor(
                    serviceType: scanResult.ValidatorType,
                    implementationType: scanResult.ValidatorType,
                    lifetime: lifetime));

            return(services);
        }