Сборка 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 экранировать кавычки.