示例#1
0
        private static void RegisterRepositories(IServiceCollection services)
        {
            var domainInterfaces = AssemblyReflection.GetRepositoryInterfaces();
            var repositories     = AssemblyReflection.GetRepositories();

            foreach (var repo in repositories)
            {
                var @interface = AssemblyReflection.FindInterface(repo, domainInterfaces);

                if (@interface != null)
                {
                    services.AddSingleton(@interface, repo);
                }
            }
        }
        public static void AddResolverDependencies(this IServiceCollection services)
        {
            var domainInterfaces = AssemblyReflection.GetInterfaces();
            var repositories     = AssemblyReflection.GetInfra();

            foreach (var repo in repositories)
            {
                var @interface = AssemblyReflection.FindInterface(repo, domainInterfaces);

                if (@interface != null)
                {
                    services.AddScoped(@interface, repo);
                }
            }
        }