ASP.NET MVC 3.0 TagBuilder在标记后添加Newline

Jop*_*per 1 asp.net-mvc-3

我正在建设这样的ul使用类TagBuilder

var ulTag = new TagBuilder("ul");
...
foreach(..items...)
{
  var liTag = new TagBuilder("li");
  ....
  ulTag.InnerHtml += liTag.ToString();
}

return new MvcHtmlString(ulTag.ToString());
Run Code Online (Sandbox Code Playgroud)

但是输出html就像这样生成一行

<ul id="menu"><li><a href="/">Home</a></li><li><a href="/About">About</a></li>.....</ul>
Run Code Online (Sandbox Code Playgroud)

但我希望这样:

<ul id="menu">
    <li><a href="/">Home</a></li>
    <li><a href="/About">About</a></li>
    .....
</ul>
Run Code Online (Sandbox Code Playgroud)

有没有办法在每个标签后添加\r\t或种类Environment.NewLine

Dar*_*rov 5

不是一个干净的方式,但它可能会工作:

var ulTag = new TagBuilder("ul");
ulTag.InnerHTML += Environment.NewLine;
foreach(..items...)
{
    var liTag = new TagBuilder("li");
    ulTag.InnerHTML += string.Format("  {0}{1}", liTag.ToString(), Environment.NewLine);
    ...
}
Run Code Online (Sandbox Code Playgroud)