Я читаю из файла. Вар содержит около 512 объектов. Когда я использую ToList (), я получаю только 438. Это в основном размер по умолчанию для списка. Я пытался увеличить его до 512, и это сработало, но когда я звоню ToList (), я получаю снова 438. Если кто-нибудь может помочь мне с этим. Если я сломаю if и получу напечатать, например, 200 объектов, я получу первые объекты, которые не появляются, когда я не ломаюсь. Я теряю записи из-за размера по умолчанию.
Есть ли способ изменить это при вызове ToList ()?
XDocument doc = XDocument.Load("file.xml");
var var = from elem in doc.Descendants("Groups").Elements()
select new Group
{
x1 = elem.Element("x1") != null ? elem.Element("x1").Value : String.Empty,
x2 = elem.Element("x2") != null ? elem.Element("x2").Value : String.Empty,
x3 = elem.Element("x3") != null ? elem.Element("x3").Value : String.Empty,
x4 = elem.Element("x4") != null ? elem.Element("x4").Value : String.Empty,
x5 = elem.Element("x5") != null ? elem.Element("x5").Value : String.Empty,
x6 = elem.Element("x6") != null ? elem.Element("x6").Value : String.Empty,
x7 = elem.Element("x7") != null ? elem.Element("x7").Value : String.Empty
};
int size = var.ToList().Capacity;
Console.WriteLine(size);
List<Group> list = new List<Group>(size);
list = var.ToList();
int i = 0;
foreach (Group ins in list)
{
i++;
Console.WriteLine(ins.ToString());
}
Console.WriteLine(i);