Мне кажется, что в TagBuilder есть серьезные изменения в отношении бета-версии 7 без упоминания о них в репортажах объявлений.
В частности. ToString больше не создает tagbuilder, он просто возвращает имя типа. ранее мы могли бы делать такие вещи внутри наших расширений HtmlHelper для создания вложенных элементов html:
var li = new TagBuilder("li");
li.AddCssClass("inactive");
var span = new TagBuilder("span");
span.SetInnerText(somestring);
li.InnerHtml = span.ToString();
.InnerHtml теперь больше не принимает строку, потому что теперь это IHtmlContent
но поскольку .ToString() не отображает тег, это также не работает:
li.InnerHtml = new HtmlString(span.ToString())
он просто отображается как "Microsoft.AspNet.Mvc.Rendering.TagBuilder", имя типа.
Я не вижу никаких новых методов для TagBuilder для обеспечения необходимой функциональности. Что мне не хватает? Как я могу теперь построить сложный вложенный html с TagBuilder?