У меня есть несколько наборов, и название этих наборов будет случайным, оно не будет последовательным.Передо мной стоит задача сохранить эти наборы в списке
Но сначала я создал класс, в котором будут храниться следующие значения:
public class Group
{
public string Name { get; set; }
public List<string> Sub { get; set; }
}
Далее яиметь информацию ниже:
RandomName1:
- line1
- line2
- line3
RandomName4:
- line1
- line2
- line3
RandomName3:
- line1
- line2
- line3
Я уже пытался сделать следующее, чтобы сгруппировать эти элементы выше в класс группы:
string[] lines = File.ReadAllLines("groups.yml",Encoding.Default);
List<Group> groups = new List<Group>();
Regex rgGroup = new Regex(@".*?\:");
for (int i = 0; i < lines.Length; i++)
{
string line = lines[i];
if (rgGroup.IsMatch(line))
{
groups.Add(new Group() { Name = line, Sub = new List<string>() });
}
else
{
groups.LastOrDefault().Sub.Add(line);
}
}
Код возвращает мне эту ошибку:
System.NullReferenceException: 'Ссылка на объект не определена для экземпляра объекта.'System.Linq.Enumerable.LastOrDefault (...) возвратил ноль.
.Похоже, я сделал некоторые неточности в коде, почему эта ошибка появляется?Есть ли другой способ сделать это?