アプリケーションログファイルで、これは私たちが得ているエラーです
2012-07-19 15:08:46,995 [17] 警告 System.Web.UI.Page [(null)] - Logging:System.OutOfMemoryException: 'System.OutOfMemoryException' 型の例外がスローされました。System.String.GetStringForStringBuilder (文字列値、Int32 startIndex、Int32 長さ、Int32 容量) で System.Text.StringBuilder.GetNewString (文字列 currentString、Int32 requiredLength) で System.Text.StringBuilder.Append (文字列値)
誰でもこの問題を回避する方法を提案できますか? データをExcelシートに書き込むために文字列ビルダーを使用しました
ここにコードがあります
public void ToCSV(DataTable dt)
{
StringBuilder sb = null;
try
{
sb = new StringBuilder(50*1024);
foreach (DataColumn col in dt.Columns)
{
sb.Append(col.ColumnName + ",");
}
sb.Remove(sb.Length - 1, 1);
sb.Append(Environment.NewLine);
foreach (DataRow row in dt.Rows)
{
for (int i = 0; i < dt.Columns.Count; i++)
{
sb.Append("\"" + row[i].ToString() + "\"" + ",");
}
sb.Append(Environment.NewLine);
}
Session["exportsCsv"] = sb;
sb = null;
}
catch (Exception ex)
{
log4net.Config.XmlConfigurator.Configure();
log.Warn("Logging:" + ex);
}
finally {
sb = null;
}
//