Чтение из файла в массив структур С#

У меня есть структура:

struct TimelineEvent    
        {
            public DateTime DateEvent;
            public string NameOfEvent;
            public string DescriptionOfEvent;

        }

Нужно, используя массив структур записать в неё данные из файла(привожу данные):
1950;событие 1 бла-бла-бла
1991-06-01;какое-то событие 2
2000-01-01;наступил миллениум, ура-ура-ура
Также привожу метод для парсинга даты, если будет нужен:

static DateTime ParseDate(string value)
        {
            DateTime date;

            if (!DateTime.TryParseExact(value, "yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
            {
                if (!DateTime.TryParseExact(value, "yyyy-mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
                {
                    if (!DateTime.TryParseExact(value, "yyyy-mm-dd", CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
                    {
                        throw new Exception("WRONG FORMAT");
                    }
                }
            }

            return date;
        }

Cтоит думаю еще указать, что файл уже считан в массив:

static string[] GetStringsFromTextFile(string filePath)
        {
            string[] stringArray;

            if (File.Exists(filePath))
            {
                stringArray = File.ReadAllLines(filePath);
            }
            else
            {
                stringArray = new string[0];
            }

            return stringArray;
        }

Попытался создать метод, но не знаю какие значения возвращать, чтобы на выходе получал struct[]

static void Events()
        {
            string[] lines = System.IO.File.ReadAllLines("../../../../timeline.csv");
            TimelineEvent[] person = new TimelineEvent[lines.Length];
            int i = 0;
            foreach (string line in lines)  // считываем файл в массив
            {
                string[] items = line.Split(' ');
                Console.WriteLine("\t" + line);
                person[i].DateEvent = ParseDate(items[0]);
                person[i].NameOfEvent = items[1];
                i++;
            }
            for(int j=0;j< lines.Length;j++)
            {
                Console.WriteLine(person[j].DateEvent + " "+person[j].NameOfEvent);
            }
            Console.ReadKey();
        }

Ответы (0 шт):