Сборка C# в рантайме. Зачем разделять string на части перед компиляцией?

Наткнулся на следующую инструкцию. На примере программы Привет мир, отправляемой в компилятор, показано как можно получить нужный PE-файл из строки. Но я никак не могу понять, зачем здесь разделили строку на отдельные, если конкретно тут нет никакого форматирования.

string code = @"
    using System;

    namespace First
    {
        public class Program
        {
            public static void Main()
            {
            " +
                "Console.WriteLine(\"Hello, world!\");"
                + @"
            }
        }
    }
";

Вопросы: Зачем это нужно конкретно здесь? Это такая специфичность компиляции at Runtime? Может быть это всё просто заморочки автора?

Спасибо.


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

Автор решения: aepot

Не думаю, что здесь есть какой-либо в этом смысл, строку можно записать вот так, и ничего не изменится:

string code = @"
    using System;

    namespace First
    {
        public class Program
        {
            public static void Main()
            {
                Console.WriteLine(""Hello, world!"");
            }
        }
    }
";

Быть может, автор поста просто не знал, как в verbatim string literal экранировать кавычки.

→ Ссылка