使用 AutoMapper 创建 DateTime
Creating a DateTime using AutoMapper
我正在努力从(年、月、日)创建一个从数据库返回的 DateTime 对象。我是 AutoMapper 的新手,所以向正确的方向轻推会很棒。
这是包含 DateTime 对象的 ViewModel 以及创建 DateTime 需要使用的三个值:
public class EnquiriesListViewModel
{
// other field elided
public sbyte flightDay;
public sbyte flightMonth;
public bool flightYear
public DateTime flightDate;
// other field elided
}
我希望 AutoMapper 从其他三个值构造 flightDate。我尝试了各种方法,其中一些甚至无法编译!
像这样:
Mapper.CreateMap<enquiryListEntry, EnquiriesListViewModel>()
.ForMember(dest => dest.flightDate, /* what goes in here? */);
期待您的回复。
男
Mapper.CreateMap<enquiryListEntry, EnquiriesListViewModel>()
.ForMember(dest => dest.flightDate, opt => opt.MapFrom(src => new DateTime(src.flightYear, src.flightMonth, src.flightDay)));
应该做。
这个解决方案来得太晚了,但它很好,因为它适用于 .NET 4.6.1
Mapper.CreateMap<enquiryListEntry, EnquiriesListViewModel>()
.ForMember(dest => dest.flightDate,
opt => opt.AddTransform(src => new DateTime(src.Year,
src.Month,
src.Day)));
我正在努力从(年、月、日)创建一个从数据库返回的 DateTime 对象。我是 AutoMapper 的新手,所以向正确的方向轻推会很棒。
这是包含 DateTime 对象的 ViewModel 以及创建 DateTime 需要使用的三个值:
public class EnquiriesListViewModel
{
// other field elided
public sbyte flightDay;
public sbyte flightMonth;
public bool flightYear
public DateTime flightDate;
// other field elided
}
我希望 AutoMapper 从其他三个值构造 flightDate。我尝试了各种方法,其中一些甚至无法编译!
像这样:
Mapper.CreateMap<enquiryListEntry, EnquiriesListViewModel>()
.ForMember(dest => dest.flightDate, /* what goes in here? */);
期待您的回复。
男
Mapper.CreateMap<enquiryListEntry, EnquiriesListViewModel>()
.ForMember(dest => dest.flightDate, opt => opt.MapFrom(src => new DateTime(src.flightYear, src.flightMonth, src.flightDay)));
应该做。
这个解决方案来得太晚了,但它很好,因为它适用于 .NET 4.6.1
Mapper.CreateMap<enquiryListEntry, EnquiriesListViewModel>()
.ForMember(dest => dest.flightDate,
opt => opt.AddTransform(src => new DateTime(src.Year,
src.Month,
src.Day)));