0

我有以下列表。我想将 映射attributesListfieldsList列表,但我只想更新 ValuefieldsList 中Name值相等的属性。中的所有其他属性都fieldsList应该被忽略——为简洁起见,我只列出了一些。

public class Attribute {
       public int Id { get; set; }
       public string Name { get; set; }
       public string Value { get; set; }
}

public class Field {
       public string Name { get; set; }
       public string Value { get; set; }
       public string Type {get; set; }
       public string Style {get; set; }
}

var attributesList = new List<Attributes>
{
    new Field {Id = 1, Name = "Color", Value = "Blue"},
    new Field {Id = 2, Name = "Subject", Value = "Maths"}
};    

var fieldsList = new List<Field>
{
    new Field {Name = "Color", Value = "", Type = "Text", Style = "padding:10px"},
    new Field {Name = "Subject", Value = "", Type = "Text", Style = "padding:10px"}
};


 Mapper.CreateMap<List<Attributes>, List<Field>>()
    .ForMember(dest => dest.Name, opt => opt.Ignore()
   .ForMember(dest => dest.Type, opt => opt.Ignore()
  .ForMember(dest => dest.Style, opt => opt.Ignore())   

如何应用条件来更新Values目标列表中Name源和目标中的属性都匹配的属性?

有没有更短的方法来忽略属性而不是一个一个地列出它们?

4

0 回答 0