我正在使用AutoMapper v8.0.0,我有一个Dictionary<string, object>与合法的 c# 属性名称不对应的键。该用例与在映射到外部类型时添加 MapFromAttribute 中MapToAttribute描述的功能相反。在那个问题中,有人发布了一个实现该功能的扩展方法的要点。
在这种情况下,当您不是从一种类型映射到另一种类型时,如何设置映射器配置,而是直接映射到如下类型:
Dictionary<string, object> dictionary = new Dictionary<string, object>
{
{ "name with spaces", "foo" },
{ "name-with-hyphens", "foo" },
{ "nameWithDifferentCASE", "foo" },
};
class MyModel
{
public string NameWithSpaces { get; set; }
public string NameWithHyphens { get; set; }
public string NameWithDifferentCase { get; set; }
}
var myModel= mapper.Map<MyModel>(dictionary);
所有配置表达式都基于源和目标类型。