将html标记作为前缀和后缀添加到字符串列表中

sto*_*tom 0 c# list append

我试图将html <li>标签作为前缀和后缀添加到字符串列表的每个元素.

这是字符串列表:

IList<string> lstUniversities = new List<string>();

lstUniversities.Add("<sup>1</sup>Harward University, USA");

lstUniversities.Add("<sup>2</sup>Yale University, USA");

lstUniversities.Select(u => "<li> " + u + " </li>").ToList();
Run Code Online (Sandbox Code Playgroud)

预期产出:

<li><sup>1</sup>Harward University, USA</li>

<li><sup>2</sup>Yale University , USA</li>
Run Code Online (Sandbox Code Playgroud)

我可以知道为什么html <li>不附加标签吗?

Ehs*_*jad 7

因为Select()返回一个新的类型集合IEnumerable<T>,所以它不会修改现有的集合.所以,你需要引用那个.Select(u => "<li> " + u + " </li>").ToList();返回的新的:

lstUniversities = lstUniversities.Select(u => "<li> " + u + " </li>").ToList();
Run Code Online (Sandbox Code Playgroud)

现在我们将新集合分配给out lstUniversities变量,我们应该看到预期的输出.

或者使用foreachfor循环来做到这一点:

for(int i=o; i < lstUniversities.Count; i++)
       lstUniversities[i] = "<li> " + lstUniversities[i] + " </li>";
Run Code Online (Sandbox Code Playgroud)

或者使用ForEach():

lstUniversities.ForEach(u  => { u  = "<li> " + u   + " </li>"; });
Run Code Online (Sandbox Code Playgroud)