Добавление списков моделей в другой список моделей

#c# #list #model #add

#c# #Список #Модель #Добавить

Вопрос:

У меня есть два списка моделей, которые я хочу добавить в третий список моделей, но я получаю сообщение об ошибке — No overload for method "Add" takes two arguments . Вот мой код:

 List<TableNotificationModel> one = JsonConvert.DeserializeObject<List<TableNotificationModel>>(cmdPositive);
List<TableNotificationModel> two = JsonConvert.DeserializeObject<List<TableNotificationModel>>(cmdNegative);
List<TableNotificationModel> three = new List<TableNotificationModel>();
three.Add(one, two);
                

IEnumerable<TableNotificationModel> result = three;
DataSourceResult dataSource = result.ToDataSourceResult(request);
  

Я хочу присвоить списку значение result three , чтобы я мог использовать его ниже.
Я попытался использовать AddRange вместо Add , но это выдает ту же ошибку.
Некоторые разработчики, у которых я стажируюсь, сказали мне разобраться Dictionary но я
не могу понять, как это исправить с помощью dictionary.

Я пробовал что-то подобное, three.Add(one) но там написано cannot convert generic list to model .

Есть какие-нибудь советы о том, как действовать дальше?

Комментарии:

1. Вы пытаетесь делать неправильные вещи. Сначала попытайтесь объяснить, какая связь между элементами в one и элементами в two ? Должно ли это быть просто объединением двух списков?

Ответ №1:

Это если это должен быть просто плоский список элементов (объединение):

 var one = JsonConvert.DeserializeObject<List<TableNotificationModel>>(cmdPositive);
var two = JsonConvert.DeserializeObject<List<TableNotificationModel>>(cmdNegative);
var three = one.Union(two).ToList();
  

Ответ №2:

Вы должны использовать AddRange() . Add принимает один объект, в то время как AddRange() принимает IEnumerable множество объектов.

Итак, three.AddRange(one);