在应用程序日志文件,这是我们正在OutOfMemory例外
2012-07-19 15错误:08:46995 [17] WARN System.Web.UI.Page [(空)] - 日志记录: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;
}
//
请发布相关代码。 – twoflower 2012-08-05 21:20:34
如果你不给我们一些额外的信息,如PC类型(嵌入式,服务器,个人)和一些代码抛出异常 – hellow 2012-08-05 21:20:43
我们不能建议任何东西看到代码日志会帮助... – Pacane 2012-08-05 21:20:49