簡體   English   中英

Automapper在使用NamingConvention的反向映射中不起作用

[英]Automapper not working in Reverse Mapping with NamingConvention

我正在使用Automapper 6.1.1。 並且需要使用反向映射。 我發現2004年的錯誤報告並被關閉。 但是在我的示例中,它不起作用,屬性c12沒有價值。 那么如何在此示例中使用反向映射?

public class Class1
{
    public string COSI_KDESI { get; set; }
}
public class Class2
{
    public string CosiKdesi { get; set; }
}
Mapper.Initialize(cfg =>
{
    cfg.SourceMemberNamingConvention = new LowerUnderscoreNamingConvention();
    cfg.DestinationMemberNamingConvention = new PascalCaseNamingConvention();
    cfg.CreateMap<Class1, Class2>().ReverseMap();
}); 

Class1 c1 = new Class1() { COSI_KDESI = "ttttttt" };

Class2 c2 = Mapper.Map<Class2>(c1);
Class1 c12 = Mapper.Map<Class1>(c2);

您需要兩個不同的配置文件,一個配置文件已經配置,另一個配置文件相反。

Mapper.Initialize(cfg =>
{
    cfg.CreateProfile("p1", p=>
    {
        p.SourceMemberNamingConvention = new LowerUnderscoreNamingConvention();
        p.CreateMap<Class1, Class2>();
    });
    cfg.CreateProfile("p2", p=>
    {
        p.DestinationMemberNamingConvention = new LowerUnderscoreNamingConvention();
        p.CreateMap<Class2, Class1>();
    });
}); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM