Есть что-то работает. Не тот синтаксис, который был после, но результат тот же.
public static IHtmlString RegisterScriptInline(this HtmlHelper htmlHelper,
Func<object, IHtmlString> content)
{
string renderedContent = content.Invoke(null).ToString(); // Got it!!!
return null;
}
И тогда это будет вызываться с чем-то вроде (расширенный пример, чтобы показать условия на стороне сервера в Razor действительно оценивают):
@Html.RegisterScriptInline(@<text>
<script type="text/javascript">
@if (someCondition)
{
@:var item = 'Value1';
}
else
{
@:var item = 'Value2';
}
</script>
</text>)
Здесь нет начального / конечного содержимого - однако все AAAA, CCCC и т. Д. В моем вопросе были разделителями, чтобы показать, что я пытался извлечь BBBB (!). Я не буду отмечать это как ответ для момент, так как он дает мне результат, который я хотел, но он не дает конкретного ответа на вопрос.
(Воспроизведение функциональности типа @section, если вам интересно ...)