

What is AutoMapper?
AutoMapper is a simple little library built to solve a deceptively complex problem - getting rid of code that mapped one object to another. This type of code is rather dreary and boring to write, so why not invent a tool to do it for us?
This is the main repository for AutoMapper, but there's more:
How do I get started?
First, configure AutoMapper to know what types you want to map, in the startup of your application:
var configuration = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Foo, FooDto>();
cfg.CreateMap<Bar, BarDto>();
}, loggerFactory);
services.AddAutoMapper(cfg =>
{
cfg.CreateMap<Foo, FooDto>();
cfg.CreateMap<Bar, BarDto>();
});
#if DEBUG
configuration.AssertConfigurationIsValid();
#endif
var mapper = configuration.CreateMapper();
Then in your application code, execute the mappings:
var fooDto = mapper.Map<FooDto>(foo);
var barDto = mapper.Map<BarDto>(bar);
Check out the getting started guide. When you're done there, the wiki goes in to the nitty-gritty details. If you have questions, you can post them to Stack Overflow.
Where can I get it?
First, install NuGet. Then, install AutoMapper from the package manager console:
PM> Install-Package AutoMapper
Or from the .NET CLI as:
dotnet add package AutoMapper
Do you have an issue?
You might want to know exactly what your mapping does at runtime.
If you're still running into problems, file an issue above.
If you are a paying customer, you can contact support via your account.
How do I set the license key?
You can set the license key when registering AutoMapper:
services.AddAutoMapper(cfg =>
{
cfg.LicenseKey = "<license key here>";
})
You can register for your license key at AutoMapper.io