awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
khellang avatar

khellang/Scrutor

0
View on GitHub↗
4,299 星标·278 分支·C#·MIT·3 次浏览

Scrutor

Scrutor is a library that extends the standard Microsoft dependency injection container. It provides tools for automated type discovery, complex registration orchestration, and service decoration capabilities within the .NET ecosystem.

The project enables the automatic discovery and registration of types from assemblies based on interfaces or attributes. It also provides a framework for wrapping existing services with decorator classes to add functionality without modifying the original source code.

The library covers broad capability areas including assembly scanning workflows, dependency injection automation, and service management for configuring the lifetime and behavior of dependencies.

Features

  • Assembly Scanning Libraries - Provides a general-purpose assembly scanner to identify and register types based on interfaces or attributes.
  • Type Filtering - Uses boolean logic predicates to determine which classes should be registered in the dependency container.
  • Assembly Scanning and Discovery - Implements systems to discover and register classes based on criteria within compiled assemblies.
  • Concrete Type Mappings - Automatically maps concrete types to their implemented interfaces to enable polymorphic dependency injection.
  • Decorator Pattern Implementations - Implements the structural decorator pattern to wrap services and add new behaviors without inheritance.
  • Service Collection Decoration - Wraps existing service registrations with decorators to add functionality without modifying the original service code.
  • Service Decoration - Supports wrapping existing service registrations with decorator classes to extend functionality.
  • Service Decoration Frameworks - Provides a system for wrapping existing dependency injection services with decorator classes.
  • Dependency Injection Extensions - Extends the standard Microsoft dependency injection container with assembly scanning and service decoration.
  • .NET Service Management - Organizes and configures the lifetime and behavior of dependencies within the Microsoft Extensions Dependency Injection framework.
  • Automatic Dependency Registrations - Automates the discovery and registration of services within the dependency injection container.
  • Fluent Interfaces - Implements a fluent interface for building complex service registration rules through method chaining.
  • Registration Orchestration - Manages complex service registration logic and lifetime configurations within the .NET ecosystem.
  • Dependency Injection - Advanced assembly scanning and decoration for dependency injection.
  • General Utilities - Assembly scanning for dependency injection.

Star 历史

khellang/scrutor 的 Star 历史图表khellang/scrutor 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Scrutor 的开源替代方案

相似的开源项目,按与 Scrutor 的功能重合度排序。
  • autofac/autofacautofac 的头像

    autofac/Autofac

    4,649在 GitHub 上查看↗

    Autofac is a dependency injection framework and inversion of control container for .NET. It functions as a component registration engine that decouples class implementations from their dependencies by injecting required services via constructors or properties. The project includes an assembly scanning library to automatically discover and register components within compiled binaries based on specific type criteria. It provides a service lifetime manager to control object memory duration using singletons, instance-per-dependency, or isolated request scopes. The framework covers a broad range

    C#autofacc-sharpdependency-injection
    在 GitHub 上查看↗4,649
  • dotnetcore/utildotnetcore 的头像

    dotnetcore/Util

    4,610在 GitHub 上查看↗

    Util is a comprehensive development framework for .NET designed to implement layered architectures and domain driven design. It provides a toolkit of base classes and tools for building full stack applications, specifically focusing on the creation of backend admin frameworks and management interfaces. The project distinguishes itself through a boilerplate generator that produces the necessary types and classes to standardize repetitive architectural patterns. It also includes a micro-frontend orchestrator that enables the splitting of large frontend modules into independent projects for sepa

    C#angularaspnetcoredotnetcore
    在 GitHub 上查看↗4,610
  • swinject/swinjectSwinject 的头像

    Swinject/Swinject

    6,708在 GitHub 上查看↗

    Swinject is a dependency injection framework for Swift that manages object creation and wiring through a centralized container. It resolves dependencies by looking up registered service types at runtime, supporting iOS, macOS, and Linux platforms. The framework provides multiple injection patterns, including initializer injection where dependencies are passed through initializer parameters, property injection that sets resolved dependencies on stored properties after object creation, and method injection that calls methods with resolved dependencies as arguments. It handles complex dependency

    Swiftdependency-injectiondi-containerinversion-of-control
    在 GitHub 上查看↗6,708
  • uber-go/diguber-go 的头像

    uber-go/dig

    4,470在 GitHub 上查看↗

    dig is a reflection-based dependency injection framework and object graph resolver for Go. It functions as a container that automatically satisfies type dependencies and manages the instantiation of complex networks of objects during application startup. The project utilizes a directed acyclic graph to determine the necessary sequence for object instantiation and employs interface-driven provider mapping to decouple concrete implementations from their satisfied interfaces. It resolves the object hierarchy through reflection-based type resolution and single-pass component wiring to ensure all

    Godependency-injectiondigo
    在 GitHub 上查看↗4,470
查看 Scrutor 的所有 30 个替代方案→

常见问题解答

khellang/scrutor 是做什么的?

Scrutor is a library that extends the standard Microsoft dependency injection container. It provides tools for automated type discovery, complex registration orchestration, and service decoration capabilities within the .NET ecosystem.

khellang/scrutor 的主要功能有哪些?

khellang/scrutor 的主要功能包括:Assembly Scanning Libraries, Type Filtering, Assembly Scanning and Discovery, Concrete Type Mappings, Decorator Pattern Implementations, Service Collection Decoration, Service Decoration, Service Decoration Frameworks。

khellang/scrutor 有哪些开源替代品?

khellang/scrutor 的开源替代品包括: autofac/autofac — Autofac is a dependency injection framework and inversion of control container for .NET. It functions as a component… dotnetcore/util — Util is a comprehensive development framework for .NET designed to implement layered architectures and domain driven… uber-go/dig — dig is a reflection-based dependency injection framework and object graph resolver for Go. It functions as a container… swinject/swinject — Swinject is a dependency injection framework for Swift that manages object creation and wiring through a centralized… ets-labs/python-dependency-injector — This is a dependency injection framework and inversion of control container for Python. It decouples object creation… devxoul/then — Then is a syntactic sugar library for Swift that provides closure-based extensions for configuring objects and value…