Open
Description
There is example code following this. When Adapt() is called, it can be seen from the console that SummaryDetail runs twice. I would like to ask what is the reason for this and how to avoid it. I have also uploaded the test code for the entire project in the attachment. Thank you all for helping me answer this.
Please attach the test code file, and I will take a look to provide further assistance.
Program.cs:
TypeAdapterConfig.GlobalSettings.Default.IgnoreNullValues(true);
TypeAdapterConfig.GlobalSettings.Scan(Assembly.Load("TestMapster"));
TestInput.cs:
public class TestInput
{
public string Summary { get; set; }
}
public class TestView
{
public string Summary { get; set; }
}
MapperConfig.cs
public class MapperConfig : IRegister
{
public void Register(TypeAdapterConfig config)
{
config.ForType<TestInput, TestView>()
.Map(dest => dest.Summary, src => SummaryDetail(src.Summary))
;
}
private static string SummaryDetail(string s)
{
Console.WriteLine($"================{s}================");
return s + " plus";
}
}
Controller.cs
[HttpGet]
public TestView Get()
{
var input = new TestInput { Summary = "Hello World" };
return input.Adapt<TestView>();
}