# dotnetcore/util

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/dotnetcore-util).**

4,610 stars · 1,289 forks · C# · MIT

## Links

- GitHub: https://github.com/dotnetcore/Util
- awesome-repositories: https://awesome-repositories.com/repository/dotnetcore-util.md

## Topics

`angular` `aspnetcore` `dotnetcore` `efcore` `framework` `ng-zorro` `taghelper`

## Description

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 separate development and deployment.

The framework covers a wide range of capability areas, including identity and access management with role-based control, multi-tenant data isolation, and automated dependency registration. It further provides utilities for data change auditing, content localization, object storage integration, and the generation of CRUD interfaces.

The system supports the creation of admin interfaces using pre-integrated UI components and server-side rendering via Razor TagHelpers.

## Tags

### Software Engineering & Architecture

- [Base-Class Layered Architectures](https://awesome-repositories.com/f/software-engineering-architecture/base-class-layered-architectures.md) — Enforces a consistent organizational structure across domain and infrastructure layers through shared base classes.
- [Assembly Scanning and Discovery](https://awesome-repositories.com/f/software-engineering-architecture/assembly-scanning-and-discovery.md) — Automatically registers services by scanning assemblies for specific interfaces during application startup.
- [Layered Architecture Frameworks](https://awesome-repositories.com/f/software-engineering-architecture/layered-architecture-frameworks.md) — Provides a structured framework and base classes to standardize the organization of application layers. ([source](https://github.com/dotnetcore/util#readme))
- [Automatic Dependency Registrations](https://awesome-repositories.com/f/software-engineering-architecture/service-instance-managers/automatic-service-registrations/automatic-dependency-registrations.md) — Automatically discovers and registers services within the dependency injection container by scanning assemblies. ([source](https://github.com/dotnetcore/util#readme))
- [Domain-Driven Designs](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/abstraction-domain-modeling/domain-driven-designs.md) — Organizes code into domain, application, and infrastructure layers using aggregates and repositories. ([source](https://github.com/dotnetcore/util#readme))
- [Layered Architectures](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/layering-presentation/layered-architectures.md) — Organizes code into distinct domain and infrastructure layers using a standardized set of base classes.
- [Data Transfer Object Mapping](https://awesome-repositories.com/f/software-engineering-architecture/data-transfer-object-mapping.md) — Provides automated configuration for mapping domain entities to data transfer objects (DTOs). ([source](https://github.com/dotnetcore/util#readme))
- [Event Bus Systems](https://awesome-repositories.com/f/software-engineering-architecture/event-bus-systems.md) — Implements a local event bus for decoupled communication between application components. ([source](https://github.com/dotnetcore/util#readme))
- [Method Interception Proxies](https://awesome-repositories.com/f/software-engineering-architecture/method-interception-proxies.md) — Uses dynamic proxies to intercept method calls for cross-cutting concerns like validation and auditing.
- [Microservice Orchestration](https://awesome-repositories.com/f/software-engineering-architecture/microservice-orchestration.md) — Coordinates synchronous calls and asynchronous events across distributed microservices to maintain system state. ([source](https://github.com/dotnetcore/util#readme))
- [Object Property Tracking](https://awesome-repositories.com/f/software-engineering-architecture/object-property-tracking.md) — Identifies and records which specific properties of an object changed during a data update. ([source](https://github.com/dotnetcore/util#readme))
- [Object Validations](https://awesome-repositories.com/f/software-engineering-architecture/object-validations.md) — Provides a standardized validation method using data annotations and custom rules to check object integrity. ([source](https://github.com/dotnetcore/util#readme))

### User Interface & Experience

- [Admin Interface Components](https://awesome-repositories.com/f/user-interface-experience/reusable-ui-components/admin-interface-components.md) — Provides a suite of pre-integrated UI components and page templates to accelerate management backend development. ([source](https://github.com/dotnetcore/util#readme))
- [Frontend UI Components](https://awesome-repositories.com/f/user-interface-experience/frontend-ui-components.md) — Streamlines the creation of application views using a set of UI components and wrappers for frontend frameworks. ([source](https://github.com/dotnetcore/util#readme))
- [Interface Localization](https://awesome-repositories.com/f/user-interface-experience/interface-localization.md) — Automatically translates user interface labels and descriptions across UI components to minimize manual configuration. ([source](https://github.com/dotnetcore/util#readme))
- [UI Component Extensions](https://awesome-repositories.com/f/user-interface-experience/ui-component-extensions.md) — Adds specialized validation and functional logic to third-party interface libraries to simplify form and table interactions. ([source](https://github.com/dotnetcore/util#readme))

### Web Development

- [ASP.NET Core Application Frameworks](https://awesome-repositories.com/f/web-development/asp-net-core-application-frameworks.md) — Serves as an opinionated architectural framework for building full stack enterprise solutions on the .NET and ASP.NET Core stack.
- [Backend Admin Frameworks](https://awesome-repositories.com/f/web-development/backend-admin-frameworks.md) — Provides a suite of tools for building management interfaces with integrated role-based access control and CRUD components for .NET.
- [Micro-Frontend Libraries](https://awesome-repositories.com/f/web-development/micro-frontend-libraries.md) — Enables splitting the frontend into independent modules that can be developed and deployed separately via module federation.
- [Micro-Frontend Module Deployment](https://awesome-repositories.com/f/web-development/micro-frontend-module-deployment.md) — The project splits a frontend application into independent modules that can be developed and deployed separately using module federation. ([source](https://github.com/dotnetcore/util#readme))
- [Client-Side State Management](https://awesome-repositories.com/f/web-development/client-side-state-management.md) — Coordinates frontend data and communication using browser local storage, cookies, and event bus operations. ([source](https://github.com/dotnetcore/util#readme))
- [Content Translation](https://awesome-repositories.com/f/web-development/internationalization-localization/translation-management-platforms/site-localization/multi-language-content-delivery/locale-based-filters/content-translation.md) — Implements a system for swapping user-facing text into multiple languages using JSON files or custom data stores. ([source](https://github.com/dotnetcore/util#readme))
- [Micro-Frontend Orchestrators](https://awesome-repositories.com/f/web-development/micro-frontend-orchestrators.md) — Composes multiple autonomous frontend modules into a single unified interface via a micro-frontend orchestrator.
- [TagHelper Rendering](https://awesome-repositories.com/f/web-development/razor-component-architectures/taghelper-rendering.md) — Renders frontend components using server-side tags that provide strong typing and automatic model binding. ([source](https://github.com/dotnetcore/util#readme))

### Business & Productivity Software

- [Automated Admin Interfaces](https://awesome-repositories.com/f/business-productivity-software/admin-panel-generators/automated-admin-interfaces.md) — Automatically generates management consoles and CRUD screens from backend code using pre-integrated UI components.

### Data & Databases

- [Data Tenant Isolators](https://awesome-repositories.com/f/data-databases/database-orchestration/tenant/database-level-tenant-isolations/data-tenant-isolators.md) — Separates customer data within a shared database using tenant resolution and automatic query filtering. ([source](https://github.com/dotnetcore/util#readme))
- [Multi-Tenant Data Management](https://awesome-repositories.com/f/data-databases/multi-tenant-data-management.md) — Separates customer data within a shared database using tenant resolution and automatic query filtering.
- [Data Auditing](https://awesome-repositories.com/f/data-databases/automatic-record-timestamping/data-auditing.md) — Automatically records the creator, modifier, and timestamps whenever a database record is saved. ([source](https://github.com/dotnetcore/util#readme))
- [CRUD Interfaces](https://awesome-repositories.com/f/data-databases/database-record-management/crud-interfaces.md) — Renders standardized screens for creating, reading, updating, and deleting data using predefined base components. ([source](https://github.com/dotnetcore/util#readme))
- [Hybrid ORM Access](https://awesome-repositories.com/f/data-databases/hybrid-orm-access.md) — Performs database operations using a combination of a heavy ORM and a lightweight mapper for complex queries. ([source](https://github.com/dotnetcore/util#readme))
- [Hybrid ORM Access](https://awesome-repositories.com/f/data-databases/object-relational-mappers/active-record-orms/hybrid-orm-access.md) — Combines a heavyweight object-relational mapper for complex entities with a lightweight mapper for high-performance queries.

### Development Tools & Productivity

- [Boilerplate Generators](https://awesome-repositories.com/f/development-tools-productivity/code-generators/boilerplate-generators.md) — Produces necessary types and classes for layered architectures to reduce manual effort for repetitive coding. ([source](https://github.com/dotnetcore/util#readme))
- [Project Bootstrapping Templates](https://awesome-repositories.com/f/development-tools-productivity/project-bootstrapping-templates.md) — Creates initial project infrastructure using predefined templates to accelerate early development. ([source](https://github.com/dotnetcore/util#readme))
- [Template-Based Code Generators](https://awesome-repositories.com/f/development-tools-productivity/template-based-code-generators.md) — Uses predefined blueprints to automatically produce repetitive boilerplate classes and project structures.

### Security & Cryptography

- [Identity and Access Management](https://awesome-repositories.com/f/security-cryptography/identity-and-access-management.md) — Provides comprehensive user management, authentication, and role-based access control for APIs and UI elements. ([source](https://github.com/dotnetcore/util#readme))
- [Permission-Based Access Control](https://awesome-repositories.com/f/security-cryptography/permission-based-access-control.md) — Defines user authorization levels and controls access via an integrated permission system. ([source](https://github.com/dotnetcore/util#readme))
- [Role-Based Access Control](https://awesome-repositories.com/f/security-cryptography/role-based-access-control.md) — Controls access to APIs and UI elements by mapping user roles to specific resource permissions.
- [UI Visibility Control](https://awesome-repositories.com/f/security-cryptography/permission-based-access-control/ui-visibility-control.md) — Controls the visibility of menus and interface areas based on a resource and role-based authorization system. ([source](https://github.com/dotnetcore/util#readme))

### Networking & Communication

- [Web API Integration](https://awesome-repositories.com/f/networking-communication/api-integration-frameworks/api-management-integration/api-integrations/web-api-integration.md) — Standardizes HTTP requests and responses using consistent result models for external web service communication. ([source](https://github.com/dotnetcore/util#readme))

### Testing & Quality Assurance

- [Method Interception](https://awesome-repositories.com/f/testing-quality-assurance/method-interception.md) — Executes custom logic before or after method calls to handle cross-cutting concerns like validation. ([source](https://github.com/dotnetcore/util#readme))
