MappingGenerator 2022.9.49

NuGet\Install-Package MappingGenerator -Version 2022.9.49
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
dotnet add package MappingGenerator --version 2022.9.49
<PackageReference Include="MappingGenerator" Version="2022.9.49" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MappingGenerator --version 2022.9.49
#r "nuget: MappingGenerator, 2022.9.49"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install MappingGenerator as a Cake Addin
#addin nuget:?package=MappingGenerator&version=2022.9.49

// Install MappingGenerator as a Cake Tool
#tool nuget:?package=MappingGenerator&version=2022.9.49

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/

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on MappingGenerator:

Repository Stars
rabbal/DNTFrameworkCore
Lightweight and Extensible Infrastructure for Building Web Applications - Web Application Framework
Version Downloads Last updated
2022.9.49 43 9/25/2022
2022.9.48 68 9/21/2022
2022.8.47 859 8/30/2022
2022.7.46 1,144 8/14/2022
2022.7.45 3,734 7/9/2022
2022.4.44 10,426 4/18/2022
2022.4.43 380 4/12/2022
2022.4.42 2,686 4/3/2022
2022.3.40 4,189 2/27/2022
2022.2.39 5,681 2/17/2022
2022.1.38 2,190 1/26/2022
2022.1.37 1,930 1/16/2022
2021.12.36 1,015 1/9/2022
2021.12.35 6,360 12/20/2021
2021.10.33 2,007 12/9/2021
2021.10.32 8,038 12/1/2021
2021.10.30 8,624 10/17/2021
2021.8.29 1,298 10/6/2021
2021.8.28 463 10/4/2021
2021.8.27 12,792 8/24/2021
2021.7.22 6,128 8/11/2021
2021.7.21 181 8/11/2021
2021.7.20 3,688 7/19/2021
2021.6.19 2,624 7/7/2021
2021.6.18 5,484 6/24/2021
2021.6.17 870 6/17/2021
2021.6.16 1,028 6/15/2021
2021.6.14 737 6/11/2021
2021.6.13 526 6/10/2021
2021.6.12 3,190 6/8/2021
2021.6.11 252 6/7/2021
2021.6.10 4,434 6/1/2021
1.22.3 26,970 3/13/2021
1.22.2 223 3/13/2021
1.22.1.18 21,455 1/21/2021
1.22.0.17 258 1/20/2021
1.21.15 3,043 1/5/2021
1.21.13 304 1/2/2021
1.21.11 271 1/2/2021
1.21.9 232 1/2/2021
1.20.463 35,599 11/12/2020
1.19.454 3,808 11/1/2020
1.19.452 310 10/31/2020
1.18.448 4,029 9/12/2020
1.17.442 2,217 9/2/2020
1.17.437 288 9/1/2020
1.17.435 357 8/31/2020
1.16.411 9,550 6/29/2020
1.16.405 5,020 6/2/2020
1.16.393 320 5/31/2020
1.15.386 314 5/31/2020
1.15.384 328 5/27/2020
1.14.356 747 3/23/2020
1.14.348 1,481 1/27/2020
1.12.306 2,458 9/20/2019
1.11.297 352 9/6/2019
1.10.281 361 8/26/2019
1.5.203 2,717 10/21/2018