在 Automapper 选项中传递多个对象

Pau*_*aul 1 c# linq automapper

我希望能够通过 Options 字典将多个对象传递给 Automapper,但字典本身是只读的。

例如,我发现的示例显示添加这样的一项:

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

但我想做更多这样的事情:

 var mappingOptions = new Dictionary<string, object>();
 mappingOptions["foo"] = "foo";
 mappingOptions["bar"] = "bar";

 var model = _mapper.Map<ThingModel>(realthing,
     opt => opt.Items = mappingOptions // readonly, can't be assigned
 );
Run Code Online (Sandbox Code Playgroud)

是否可以添加多个项目,也许就在 LINQ 内部?

stu*_*rtd 5

你的意思是这样吗?

Mapper.Map<Source, Dest>(src, opt => 
{
     opt.Items["foo"] = "foo";
     opt.Items["bar"] = "bar";
});
Run Code Online (Sandbox Code Playgroud)