AutoMapper 将 KeyValuePair<String, String> 映射到类?



我想做的是拿一个IEnumerable<KeyValuePair<String, String>>将它们映射到一个类。

因此,我想获取这些KeyValuePair<String, String>并将它们作为属性名称和值映射到类。

这能做到吗?还是其他建议?

是的,可以做到,例如像这样

static void Main(string[] args)
    {
        Mapper.CreateMap<KeyValuePair<string, string>, MyClass>()
           .ConstructUsing(x => new MyClass { Name = x.Key, Value = x.Value });
        var kv = new KeyValuePair<string, string>("Key", "Val");
        var mapped = Mapper.Map<KeyValuePair<String, String>, MyClass>(kv);
        Console.WriteLine(mapped.ToString());
        Console.ReadLine();
    }
    public class MyClass
    {
        public string Name { get; set; }
        public string Value { get; set; }
        public override string ToString()
        {
            return String.Format("Name : {0}, Value : {1}", Name, Value);
        }
    }

在创建映射中使用列表,以防您想要处理 IEnumerable

最新更新