Asp – AutoMapper issue


Trying to automap some objects.
Source objects has properties with _ before name, destination objects – have not.
Is it possible to implement ONE map creation, that automapper would map all _properties to properties
for all source types.

class MyMapper<TFrom, TTo>{
    TTo PerformMap(TFrom fromObject){
        Mapper.CreateMap<From, To>(); // ???
        TTo result = Mapper.Map<From, To>(fromObject);
        //result.Id.ShouldBe(value from TFrom._Id);
        return result;

class From
    public int _Id { get; set; }
    public string _Name { get; set; }

class To
    public int Id { get; set; }
    public string Name { get; set; }

Best Solution

Something I added recently to AutoMapper might help you - custom naming conventions. If you check out the trunk (R107), look around for INamingConvention. Right now, I have two naming conventions (PascalCase and lower_case_underscore), but it's really just a matter of figuring out the right RegEx to get you going:


Right now, naming conventions are global and profile-scoped. Since this feature is new, there isn't any documentation other than the tests.

Related Question