C#解析数据行

时间:2013-01-07 12:51:50

标签: c# datatable

情景:

基于用户交互,将调用几个存储过程中的一个,每个存储过程具有不同的结果结构,因此我无法强烈键入返回。

我正在使用Petapoco并返回IEnumerable<dynamic>行,转换为数据表(大约需要245毫秒),然后循环遍历数据表行中的行,并附加到创建html表的字符串。

一个结果是返回超过3000行,并且花了将近2分钟来解析。

我该如何改进?每行只需要大约35毫秒,所以个别不是问题。

如果我能逃脱它,我宁愿不必添加分页。

1 个答案:

答案 0 :(得分:1)

最有可能使用StringBuilder是解决方案。

而不是附加到字符串实例:

var html = "";

foreach(var row in rows)
    html += "<p>" + row + "</p>";

使用StringBuilder

var sb = new StringBuilder();
foreach(var row in rows)
    sb.Append("<p>" + row + "</p>");

var html = sb.ToString();