Хотелось бы узнать, является ли способ добавления списка в другой накопительный список наиболее эффективным - PullRequest
0 голосов
/ 07 марта 2019

У меня есть 2 списка (Person и PersonMeta).Я получаю данные для peopleList из некоторого Api, а затем добавляю их в personMetaList (где PersonMeta наследует от Person).Я использую AutoMapper для сопоставления объектов.

Мой вопрос о том, как я кумулятивно добавляю peopleList к peopleMetaList (последняя строка кода).Это лучший способ / эффективный способ добавления списка в другой список?

class Person
{
  int id {get;set;}
  string name {get;set;}
}

class PersonMeta : Person
{
  string metaProperty1 {get;set;} 
}

List<PersonMeta> peopleMetaList = new List<PersonMeta>();

List<Person> peopleList = getFromApiSomehow();

peopleList.ForEach(x => listPeopleMeta.Add(Mapper.Map<PersonMeta>(x)));

1 Ответ

1 голос
/ 07 марта 2019

На мой взгляд, лучший способ сделать это - создать собственную карту.Не перебирайте коллекцию, отображая каждое значение.Automapper сделает это за вас.

Пожалуйста, прочтите здесь документацию о том, как использовать функцию ConvertUsing ()

http://docs.automapper.org/en/stable/Custom-type-converters.html

Единственное, что вам нужно сделать, это реализоватьTypeConverter и укажите его в конфигурации вашего автомаппера

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...