.NET 4.x Как сохранить состояние List до сортировки? - C#
Формулировка задачи:
Есть List<String>. В программе используется его сортировка, но так же нужно в некоторый момент и несортированное состояние. Каким образом можно сохранить несортированный (до применения сортировки) List внутри программы, без сохранения в файлы.
Решение задачи: «.NET 4.x Как сохранить состояние List до сортировки?»
textual
Листинг программы
class Program
{
static void Main(string[] args)
{
List<CStructure> notSortedList = new List<CStructure>();
List<CStructure> sortedList = new List<CStructure>();
CStructure one = new CStructure();
one.ConfigurationsInfo = new List<CConfStructure>();
CConfStructure w1 = new CConfStructure();
w1.PartName = "03";
one.ConfigurationsInfo.Add(w1);
CConfStructure w2 = new CConfStructure();
w2.PartName = "01";
one.ConfigurationsInfo.Add(w2);
CConfStructure w3 = new CConfStructure();
w3.PartName = "02";
one.ConfigurationsInfo.Add(w3);
notSortedList.Add(one);
Console.WriteLine("Список до сортировки");
foreach (CStructure structure in notSortedList)
{
foreach (CConfStructure VARIABLE in structure.ConfigurationsInfo)
{
Console.WriteLine(VARIABLE.PartName);
}
}
sortedList = new List<CStructure>(notSortedList);
foreach (CStructure structure in sortedList)
{
structure.ConfigurationsInfo = structure.ConfigurationsInfo.OrderBy(x => x.PartName).ToList();
}
Console.WriteLine("Просортировали");
Console.WriteLine("И снова тот самый список до сортировки");
foreach (CStructure structure in notSortedList)
{
foreach (CConfStructure VARIABLE in structure.ConfigurationsInfo)
{
Console.WriteLine(VARIABLE.PartName);
}
}
Console.ReadLine();
}
}
public class CStructure
{
public List<CConfStructure> ConfigurationsInfo { get; set; }
}
public class CConfStructure
{
public String PartName { get; set; }
}