将对象传递给 AutoMapper 映射

2024-04-14

我正在使用 AutoMapper,被映射到的实体的一些值是我当前方法中的变量。我尝试用谷歌搜索但没有成功。我可以将一组键值对或一个对象或其他东西传递给我的映射以使其使用这些值吗?

映射后修改示例

//comment variable is a Comment class instance
var imageComment = AutoMapper.Mapper.Map<Data.ImageComment>(comment);
//I want to pass in imageId so I dont have to manually add it after the mapping
imageComment.ImageId = imageId;

AutoMapper 可以开箱即用地处理这种键值对场景。

Mapper.CreateMap<Source, Dest>()
    .ForMember(d => d.Foo, opt => opt.ResolveUsing(res => res.Context.Options.Items["Foo"]));

然后在运行时:

Mapper.Map<Source, Dest>(src, opt => opt.Items["Foo"] = "Bar");

深入了解上下文项目有点冗长,但是就这样。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将对象传递给 AutoMapper 映射 的相关文章

随机推荐