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

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

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

AutoMapper/AutoMapper

0
View on GitHub↗
10,191 星标·2,409 分支·C#·2 次浏览automapper.io↗

AutoMapper

AutoMapper is a .NET object-to-object mapper designed to transfer data between different object types. It functions as an automated mapping library that reduces the need for manual property assignments by using naming conventions to match properties between classes.

The library focuses on automating data projection and the conversion of internal domain models into data transfer objects. It supports layered architecture decoupling by mapping data between domain entities and view models.

The system employs convention-based member matching, flattening-based property projection, and recursive type resolution. It utilizes expression-tree compilation and a configuration-based mapping cache to handle object transformations, while providing a type-converter pipeline for incompatible data formats.

Features

  • .NET Object Mapping - Acts as a specialized .NET library for transferring data between different object types using conventions.
  • Automated Data Projection - Projects database query results directly into specific object shapes without manual field-by-field mapping.
  • Object Mapping Libraries - Simplifies the conversion of data transfer objects to domain models and vice versa.
  • Object-to-Object Mappers - Provides a library for transferring data between different object types in .NET using convention-based mapping.
  • Data Transfer Object Mapping - Provides automated mapping between domain entities and data transfer objects to decouple APIs from internal schemas.
  • Convention-Based Data Mapping - Automatically matches properties of different classes based on naming standards to reduce manual assignment code.
  • Convention-Based Matching - Automatically matches source and destination properties by comparing names and types using predefined naming rules.
  • Type-Converter Pipelines - Routes the mapping process through a chain of custom converters to transform incompatible data types.
  • Object Flattening - Converts complex nested source objects into a single-level structure by concatenating property names.
  • Expression Tree Compilation - Compiles mapping definitions into executable delegates using expression trees to eliminate repeated reflection during transformation.
  • Recursive Type Resolution - Walks through nested object hierarchies to resolve and instantiate child types based on mapping configurations.
  • Mapping Caches - Implements a configuration-based mapping cache to store compiled functions and ensure high-performance reuse.
  • Layered Architectures - Separates application layers by mapping data between domain entities and view models.
  • Core .NET Libraries - Convention-based library for mapping between object models.
  • General Utilities - Convention-based object-to-object mapping for .NET applications.
  • Object Mapping - Convention-based object-to-object mapping for .NET applications.

Star 历史

automapper/automapper 的 Star 历史图表automapper/automapper 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

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

Start searching with AI

常见问题解答

automapper/automapper 是做什么的?

AutoMapper is a .NET object-to-object mapper designed to transfer data between different object types. It functions as an automated mapping library that reduces the need for manual property assignments by using naming conventions to match properties between classes.

automapper/automapper 的主要功能有哪些?

automapper/automapper 的主要功能包括:.NET Object Mapping, Automated Data Projection, Object Mapping Libraries, Object-to-Object Mappers, Data Transfer Object Mapping, Convention-Based Data Mapping, Convention-Based Matching, Type-Converter Pipelines。

automapper/automapper 有哪些开源替代品?

automapper/automapper 的开源替代品包括: mapstermapper/mapster — Mapster is a .NET object-to-object mapper and high-performance mapping engine used for transforming data between… luckypennysoftware/automapper — AutoMapper is a strongly typed object-to-object mapper for .NET. It provides utilities for copying data between… riok/mapperly — Mapperly is a C# source generator used for high-performance object-to-object mapping in .NET. It functions as a… dotnetcore/util — Util is a comprehensive development framework for .NET designed to implement layered architectures and domain driven… alibaba/cola — COLA is a core architectural toolkit for Java applications designed around domain-driven design and a clean,… rest-assured/rest-assured — Rest-assured is a Java-based REST API testing framework and HTTP client library designed for automating web service…

AutoMapper 的开源替代方案

相似的开源项目,按与 AutoMapper 的功能重合度排序。
  • mapstermapper/mapsterMapsterMapper 的头像

    MapsterMapper/Mapster

    5,127在 GitHub 上查看↗

    Mapster is a .NET object-to-object mapper and high-performance mapping engine used for transforming data between different object models. It functions as a type-safe data transfer tool and a LINQ query projection tool to move data between internal logic and external data structures. The engine utilizes compiled mapping expressions and machine code to reduce overhead during object conversion. It specifically allows for projecting queryable data sources directly into destination types to optimize database retrieval. The toolset covers data transfer object generation, immutable data transformat

    C#
    在 GitHub 上查看↗5,127
  • luckypennysoftware/automapperLuckyPennySoftware 的头像

    LuckyPennySoftware/AutoMapper

    10,190在 GitHub 上查看↗

    AutoMapper is a strongly typed object-to-object mapper for .NET. It provides utilities for copying data between different object representations using convention-based property matching to eliminate manual assignment code. The library automates the transformation of data models by matching source and destination properties based on shared names and types. It supports the conversion of internal domain models into data transfer objects, facilitating data movement between presentation, business, and data access layers. The system employs reflection-based type discovery and recursive object grap

    C#
    在 GitHub 上查看↗10,190
  • riok/mapperlyriok 的头像

    riok/mapperly

    4,100在 GitHub 上查看↗

    Mapperly is a C# source generator used for high-performance object-to-object mapping in .NET. It functions as a compile-time mapping library that produces the necessary transformation code during the build process, eliminating the need for runtime reflection when converting between domain models and data transfer objects. The tool distinguishes itself by providing type-safe diagnostic validation and strict mapping enforcement, emitting warnings for unmapped properties at compile time. It includes specialized capabilities for circular reference handling and deep cloning to maintain object iden

    C#
    在 GitHub 上查看↗4,100
  • alibaba/colaalibaba 的头像

    alibaba/COLA

    12,964在 GitHub 上查看↗

    COLA is a core architectural toolkit for Java applications designed around domain-driven design and a clean, object-oriented layered architecture. It provides a framework for managing project structures, implementing domain-driven entity modeling, and organizing enterprise application architecture to decouple business logic from technical dependencies. The project features a pluggable logic extension system that allows for the addition of new functionality through defined extension points without modifying the core codebase. It also includes a project bootstrapping toolkit and an integration

    Javaarchitecturecleancola
    在 GitHub 上查看↗12,964
查看 AutoMapper 的所有 30 个替代方案→