我試圖尋找一個理由,爲什麼這個循環如此緩慢,但我還沒有得到一個很好的答案呢。以下循環需要花費一分鐘以執行:爲什麼這個循環如此緩慢?
string answer = "";
string headers = "";
string datarows = "";
bool firstRun = true;
foreach (Dictionary<string, string> row in JSON)
{
datarows += "<tr>";
foreach (KeyValuePair<String, String> cell in row)
{
if (firstRun) { headers += "<th>" + cell.Key + "</th>"; }
datarows += "<td>" + cell.Value + "</td>";
}
datarows += "</tr>";
firstRun = false;
}
answer += "<table><tr>" + headers + "</tr>" + datarows + "</table>";
return answer;
JSON變量是一個List幷包含約1150個字典。每個字典包含9個鍵值對。有什麼想法嗎?
您是否嘗試過的StringBuilder是否幫助? – harold 2012-03-19 16:48:27
我建議你使用StringBuilder而不是字符串連接。它不會解決所有的性能問題,但它可以幫助 – Jetti 2012-03-19 16:48:47
另外,if(firstrun)在每次迭代中都運行,但僅用於第一次。 – gbianchi 2012-03-19 16:50:00