美文网首页
12.AutoMapper 之Null替换(NullSubsti

12.AutoMapper 之Null替换(NullSubsti

作者: 做人生的CEO | 来源:发表于2019-01-08 17:32 被阅读16次

Null 替换(Null Substitution)

Null 替换允许当源类型成员在成员链任何位置为Null时给目标成员提供一个备用的值。这意味着目标成员不再映射为Null而是你提供的备用值。

var config = new MapperConfiguration(cfg => cfg.CreateMap<Source, Dest>()
    .ForMember(destination => destination.Value, opt => opt.NullSubstitute("Other Value")));

var source = new Source { Value = null };
var mapper = config.CreateMapper();
var dest = mapper.Map<Source, Dest>(source);

dest.Value.ShouldEqual("Other Value");

source.Value = "Not null";

dest = mapper.Map<Source, Dest>(source);

dest.Value.ShouldEqual("Not null");

在目标类型之后任何映射/转换都是以源成员类型来进行的。

相关文章

网友评论

      本文标题:12.AutoMapper 之Null替换(NullSubsti

      本文链接:https://www.haomeiwen.com/subject/ggjbrqtx.html