Разбить разделенную строку на иерархию, используя c # и linq

У меня есть строка, разделенная точками ('.') Символов, которые представляют иерархию:

string source = "Class1.StructA.StructB.StructC.FieldA";

Как я могу использовать C # и linq, чтобы разделить строку на отдельные строки, чтобы показать их иерархию? Такие как:

string[] result = new string[]
{
    "Class1",
    "Class1.StructA",
    "Class1.StructA.StructB",
    "Class1.StructA.StructB.FieldA"
};

Ответы на вопрос(4)

Ваш ответ на вопрос