情景:
基于用户交互,将调用几个存储过程中的一个,每个存储过程具有不同的结果结构,因此我无法强烈键入返回。
我正在使用Petapoco并返回IEnumerable<dynamic>
行,转换为数据表(大约需要245毫秒),然后循环遍历数据表行中的行,并附加到创建html表的字符串。
一个结果是返回超过3000行,并且花了将近2分钟来解析。
我该如何改进?每行只需要大约35毫秒,所以个别不是问题。
如果我能逃脱它,我宁愿不必添加分页。
答案 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();