2 つのオブジェクトのマッピングに Automapper を使用しています。
目的地にデフォルト値を持つフィールド VehicleModel があります。ソースにこの宛先フィールドのマッピングがありません。だから地図にしなかった。マッピングが完了すると、私のデフォルト値は宛先で null 値に設定されます。データ オブジェクトは次のようになります。
public partial class Source
{
private Car[] cars;
public Car[] Cars
{
get { return this.cars; }
set { this.cars = value; }
}
}
public partial class Destination
{
private OutputData output;
public OutputData Output
{
get { return this.output; }
set { this.output= value; }
}
}
public class OutputData
{
private List<Cars> cars;
private string vehicleModel;
public Car[] Cars
{
get { return this.cars; }
set { this.cars = value; }
}
public string VehicleModel
{
get { return this.vehicleModel; }
set { this.vehicleModel= value; }
}
}
Source と OutputData の間のマッピング。
Mapper.CreateMap<Source, OutputData>();
Mapper.CreateMap<Source, Destination>().ForMember( dest => dest.Output, input =>
input.MapFrom(s=>Mapper.Map<Source, OutputData>(s)));
この動作を回避する方法。
前もって感謝します。サンディープ