Skip to content
| Marketplace
Sign in
Visual Studio>Tools>MappingGenerator
MappingGenerator

MappingGenerator

Cezary Piątek

|
15,759 installs
| (45) | Free Trial
MappingGenerator was initially created as a design-time alternative to AutoMapper. Now it is evolving into a coding assistant to whom you can delegate the most mundane coding tasks.
Download

How does it work?

Watch the video

IHow does it work

👉 For VS2022 there's a separate installer here 👈

Key features:

⭐ Generating mapping method implementation

⭐ Generating full mapper class

⭐ Generating mapping lambda for Select method

⭐ Implementing object cloning

⭐ Cleaning up method invocation (reformating, auto-extracting complex parameters, etc)

⭐ Method invocation scaffolding

⭐ Object initialization scaffolding

⭐ Smart snippets for ILogger usages

⭐ Design-time JSON deserializer

Scroll down or check the documentation to find out more.


This software is provided as 👉Freemium👈 which means that some features are available for free, and some features require paid license. More info about that in What you get in the Free version and What you get in the Paid version sections below 👇


Important resources

Product page: https://www.mappinggenerator.net

Features overview: Documentation

Release notes and previous versions: Changelog

Bugs and Feature Requests: Issue Tracker

Check out the Special Offers to save some 💲💲💲


What you get in the Free version

Mapping method implementor

Code action that generates an implementation for different mapping methods based on the method signature:

Method invocation scaffolder

Code action that automatically completes method invocation with locally available variables

Initialization block scaffolder

Code action that automatically completes object initialization block with locally available variables:

Mapping lambda scaffolder

Code action that generates mapping lambda for Select() and ConvertAll() methods

What you get in the Paid version

UI Mapping configurator

Full access to UI configurator that allows adjusting different aspects of how the mapping code is generated (in the free version you can try it how it works in read-only mode).

Read more about the UI Configurator possibilities here https://docs.mappinggenerator.net/mappings/ui-configurator/

More matching rules and mapping converters

Premium version contains a much broader set of converters and matching rules that are able to handle more complex mappings:

  • ⭐ String Parsing Converter
  • ⭐ Enum To Enum Converter
  • ⭐ Enum To String Converter
  • ⭐ DataReader To Object
  • ⭐ Object To Dictionary
  • ⭐ Dictionary To Object
  • ⭐ Dictionary To Dictionary
  • ⭐ Dictionary To Collection
  • ⭐ Collection To Dictionary
  • ⭐ Existing Instance Converters
  • ⭐ Existing Static Converters
  • ⭐ Unwrapping Converter

More details

Mapping interface implementor

Code action that generates mapper implementation based on the provided interface:

More details

Full Mapper generator

MappingGenerator provides code actions for generating a complete mapper class with desired mapping methods:

  • Map A to B - pure mapping method that converts type A to type B.
  • Map B to A - pure mapping method that converts type B to type A.
  • Update A with B - mapping method that updates arguments of type A with values from the argument of type B.
  • Update B with A - mapping method that updates arguments of type B with values from the argument of type A.
  • Project A to B - Linq projection from type A to type B
  • Project B to A - Linq projection from type B to type A.

More details

Invocation CleanUp refactoring

This code action allows for:

  • Fixing method invocation formatting. We can choose between single and multi-line notation.
  • Toggle arguments’ names.
  • Extract complex arguments to local variables.

More details

Invocation Scaffolder

Have you ever been struggling with completing a method's long parameter list? What do you feel when you've got lost in the middle because there are a few similar overloads? This premium feature allows for quick scaffolding of complete method invocation.

More details

Advanced Object Scaffolder

This module allows for the customization of how the object initialization is scaffolded:

  • Option to choose value generation strategy
  • Chose between new Type() and new() object creation syntax.
  • Limit nesting level (useful for scaffolding recursive types or large object graphs).
  • Define how many elements generate for collection initialization.
  • Control the order of the initialized properties.

More details

Facility for logging

A set of scaffoldings that facilitate the usage of Microsoft.Extensions.Logging.ILogger:

  • Automatically inject strongly typed logger and log info about the caught exception.
  • Wrap the selected block with try-catch, inject logger if needed, and log the exception
  • Wrap the selected block with logging scope
  • Inject logger and insert logger accessor

Automatically inject strongly typed logger and log info about the caught exception. Learn more about this feature here

More details

Using along with Resharper

If you are not able to access MappingGenerator via the context menu (alt + enter or ctr + . ) please verify your Resharper settings related to Visual Studio Integration or Visual Studio code analysis (depends on the R# version). You can read more about proper Resharper configuration for Roslyn extensions here https://docs.mappinggenerator.net/basics/using-with-resharper/

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft