Infrastructure.Mapping.AutoMapper
1.0.0
dotnet add package Infrastructure.Mapping.AutoMapper --version 1.0.0
NuGet\Install-Package Infrastructure.Mapping.AutoMapper -Version 1.0.0
<PackageReference Include="Infrastructure.Mapping.AutoMapper" Version="1.0.0" />
<PackageVersion Include="Infrastructure.Mapping.AutoMapper" Version="1.0.0" />
<PackageReference Include="Infrastructure.Mapping.AutoMapper" />
paket add Infrastructure.Mapping.AutoMapper --version 1.0.0
#r "nuget: Infrastructure.Mapping.AutoMapper, 1.0.0"
#:package Infrastructure.Mapping.AutoMapper@1.0.0
#addin nuget:?package=Infrastructure.Mapping.AutoMapper&version=1.0.0
#tool nuget:?package=Infrastructure.Mapping.AutoMapper&version=1.0.0
About
The Infrastructure.Mapping.AutoMapper package provides essential services, helpers, models and base classes for mapping using package Automapper in .NET applications. It serves as a foundation for mapping in across projects.
How to Use
- Define Entities and Models
Entities (in DAL):
public class DepartmentEntity
{
public required int Id { get; set; }
public required string Name { get; set; }
}
Models (in BLL):
public class DepartmentModel
{
public required int Id { get; set; }
public required string Name { get; set; }
}
- Create repository
Repository interface:
public interface IDepartmentRepository
{
public DepartmentEntity GetDepartmentById(int departmentId);
}
Interface implementation:
public class DepartmentRepository : IDepartmentRepository
{
public DepartmentEntity GetDepartmentById(int departmentId)
{
return new DepartmentEntity
{
Id = departmentId,
Name = $"Department {departmentId}"
};
}
}
- Create service
Service interface:
public interface IDepartmentService
{
public DepartmentModel GetDepartmentById(int departmentId);
}
Interface implementation:
public class DepartmentService : IDepartmentService
{
private readonly IMapper<DepartmentEntity, DepartmentModel> _departmentMapper;
private readonly IDepartmentRepository _departmentRepository;
public DepartmentService(
IMapper<DepartmentEntity, DepartmentModel> departmentMapper,
IDepartmentRepository departmentRepository)
{
ArgumentNullException.ThrowIfNull(departmentMapper, nameof(departmentMapper));
ArgumentNullException.ThrowIfNull(departmentRepository, nameof(DepartmentRepository));
_departmentRepository = departmentRepository;
_departmentMapper = departmentMapper;
}
public DepartmentModel GetDepartmentById(int departmentId)
{
var departmentEntity = _departmentRepository.GetDepartmentById(departmentId);
var result = _departmentMapper.Map(departmentEntity);
return result;
}
}
Create mapper profile
public class DepartmentMappingProfile: Profile { public DepartmentMappingProfile() { CreateMap<DepartmentEntity, DepartmentModel>(); } }
Register mappers and mapper profile in the DI container
In Startup.ConfigureServices or Program.cs:
services.AddSingleton(typeof(IMapper<,>), typeof(Mapper<,>));
services.AddAutoMapper(config => {}, typeof(DepartmentMappingProfile));
Main Types
The main types provided by this library are:
Infrastructure.Mapping.AutoMapper.Mapper<TSource, TDestination>
*(Defines implementation a contract for mapping objects from one type to another.
Supports simple one‑to‑one transformations)*
Feedback & Contributing
Infrastructure.Mapping.AutoMapper is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- AutoMapper (>= 16.1.1)
- Infrastructure.Mapping (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 105 | 4/8/2026 |