我写了一个循环,从字符串列表中逐个显示每一行。
问题是列表包含的行数超过45000行,创建用于显示的页面需要花费大量时间。
有人能帮忙优化代码吗?

        List<string> OverrrideLog = lc.getOverrideLog();
        List<string> AccessLog = lc.getAccessLog();

        foreach (string s in OverrrideLog)
            lblOverrideLog.Text += s + "<br/>";

        foreach (string s in AccessLog)
            lblAccessLog.Text += s + "<br/>";

这里lbloverridolog和lblaccesslog是文本,每个列表有22000多行。

最佳答案

您可以使用String.Join方法(字符串,IEnumerable):

List<string> OverrrideLog = lc.getOverrideLog();
List<string> AccessLog = lc.getAccessLog();

lblOverrideLog.Text = String.Join("<br />", OverrrideLog);
lblAccessLog.Text = String.Join("<br />", AccessLog);

(另请参见String.Join vs. StringBuilder: which is faster?

09-30 16:33
查看更多