基本的にDateTime
、「表面」にあるクラスと、別のクラスの複合プロパティ内のクラスの一部である別のクラスがあり、これらのタイプDateTime
間で前後にマップしたいと考えています...DateTime
public class AModel {
DateTime DateFrom { get;set; }
DateTime DateThru { get;set; }
}
public class BModel {
ModelDateCollection DateFromClass { get;set; }
ModelDateCollection DateThruClass { get;set; }
}
public class ModelDateCollection {
DateTime Date { get;set; }
String Display { get; } // Example Readonly for Date Display
DateTime FirstOfMonth { get; } // Another Example to extend Complex Class
}
私が使用しているマップの初期化のために:
CreateMap<BModel, AModel>()
.ForMember(d => d.DateFrom, s => s.MapFrom(src => src.DateFromClass.Date))
そして、ご覧のとおり、 PropertyDateFromClass.Date
を destinationにマップしようとしていますDateFrom
。
また、他の方向にもマッピングするつもりです。
CreateMap<AModel, BModel>()
.ForMember(d => d.DateFrom, s => s.MapFrom(src => new ModelDateCollection(src.DateFrom)))
以下の例外によると、これらの DateTime 値をそのまま前後にマップすることはできません。
タイプ 'System.DateTime' のオブジェクトをタイプ 'ModelDateCollection' にキャストできません。-> AModel を BModel にマップしようとしています AModel から BModel へのマッピング構成を使用しています タイプ 'AutoMapper.AutoMapperMappingException' の例外がスローされました。
助言がありますか?