Разбить List на несколько обьектов c List - C#

Узнай цену своей работы

Формулировка задачи:

Задумался как я то кусочками все делить оказалось не так уж просто

List<string> Разбить на несколько List<string> В чем фишка допустим у нас есть листок с 10 магических слов
Листинг программы
  1. List<string> ListHome = new List<string>(){"Муть","Порт","Телка","Космос","Стул","Рыло","Нога","Кусок","Гавно", "Лох"};
Обьект что будет иметь мини ListMini по 2 слова, с общего ListHome
Листинг программы
  1. public class Conrat
  2. {
  3. public int Number {get;set;}
  4. public List<string> ListMini {get;set;}
  5. }
Записуем Листок Обьектов что имеет мини листочки
Листинг программы
  1. List<Conrat> ListConrat = new List<Conrat>();
  2. for(int i=0; i<ListHome.Count;i++)
  3. {
  4. Conrat obj=new Conrat();
  5. obj.Number = i;
  6. obj.ListMini = ListHome.GetReange(i*ListHome.Count,2);
  7. ListConrat.Add(obj);
  8. }
Но это выражение не верно нельзя использовать ListMini.Clear(); , ListMini.Remove(0;2); практически удаляеться все они связаны с обьектами листа остаеться пытаться разбивать по 2 слова GetReange Но к сожалению при итерации следущей ListMini - заполняеться не нужными словами по +2 получаеться ListMini каждый новый обьект 2 , 4 ,6 , 8 ,10 а должно бить ListMini хранил по 2 новых слов 2 , 2 , 2 ,2 , 2 Идея разбить ListHome, на ListMini по 2 слова в листку, в каждом обьекте Conrat И каждый обьект Conrat будет записан в листок обьектов ListConrat

Думаю задача не с легких меня поситила

Ну химичте зеленые человечки

Решение задачи: «Разбить List на несколько обьектов c List»

textual
Листинг программы
  1. var i_всегоПозиций = xDoc_GoodLinks.Root.Elements().Count();
  2.  
  3.             //разбиение входного массива на ХХХ частей
  4.             var nChunks = 100;
  5.             var chunkLength = (int)Math.Ceiling(i_всегоПозиций / (double)nChunks);
  6.             var parts = Enumerable.Range(0, nChunks).AsParallel()
  7.                       .Select(i => xDoc_GoodLinks.Root.Elements().Skip(i * chunkLength)
  8.                                          .Take(chunkLength)
  9.                                          .ToList())
  10.                       .ToList();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.786 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы