Я хочу написать Razor View Helper для создания однострочного контента:
@helper Format(obj) {
<text>
@obj.Title
@obj.FormatInnerData() (obj.User != null)
{
@obj.User.Name
}
<text>
}
Но, конечно, я получаю
Title
Inner Data
User Name
В настоящее время я должен сделать
<text>@obj.Title @obj.FormatInnerData() @(obj.User != null ? obj.User.Name : "")</text>
для вывода текста в виде одной строки без разрывов строк, но это может стать довольно длинным / нечитаемым для многих свойств.
Другими словами, как мне удобнее использовать Razor для создания текстового контента, а не разметки контента?
UPD: в идеале это было бы что-то вроде
<content>@obj.Title</content>
<content>@obj.Format()
@obj.User.Name</content>
т.е. только части между тегами контента попадают в выходной поток. Конечно, возможно, более простой синтаксис, такой как @: вместо .
Примером использования может быть генерация строкового содержимого JavaScript с разметкой внутри или генерация текстовых файлов с подробностями лицензии в формате «Ключ: Имя (подробности)» в каждой строке с пробелами для группировки.