OleDbDataReader WriteDr = OLEDBPerform.dr("select Do_Id,Do_Title,Do_Html from Do_About");
StringBuilder sb = new StringBuilder();
while (WriteDr.Read())
{
StreamWrite sw = new StreamWrite();
//Response.Write(WriteDr["Do_Title"].ToString());
//string title = WriteDr["Do_Title"].ToString();
sw.tempMap = DomainInfo.Domain + "Net/About.aspx?Info=" + WriteDr["Do_Id"].ToString();
sw.writeMap = Server.MapPath("~\\" + WriteDr["Do_Html"].ToString());
if (sw.write() == "ok")
{
sb.Append("生成成功");
}
//else
//{
// sb.Append("<font color=#ff0000>" + title + "生成失败</font><br>");
//}
}上面是一段生成静态页的代码
使用OLEDBDATAREADER,
它先要读出Net/About.aspx的内容,然后生成,其中Net/About.aspx中也有用到OLEDBDATAREADER,并且用完后关闭。
当WriteDr连接以后,读出Net/About.aspx的内容后,WriteDr就关闭了。
我想问的是,是不是在一个用户访问的时候,同一个,在这个WriteDr没循环完,只要Net/About.aspx中的DATAREADER关闭,WRITEDR也关闭,原理是不是他们使用的是同一个CONN。能有什么办法避免这种事情吗?好像说地有点乱,希望大家能明白。
StringBuilder sb = new StringBuilder();
while (WriteDr.Read())
{
StreamWrite sw = new StreamWrite();
//Response.Write(WriteDr["Do_Title"].ToString());
//string title = WriteDr["Do_Title"].ToString();
sw.tempMap = DomainInfo.Domain + "Net/About.aspx?Info=" + WriteDr["Do_Id"].ToString();
sw.writeMap = Server.MapPath("~\\" + WriteDr["Do_Html"].ToString());
if (sw.write() == "ok")
{
sb.Append("生成成功");
}
//else
//{
// sb.Append("<font color=#ff0000>" + title + "生成失败</font><br>");
//}
}上面是一段生成静态页的代码
使用OLEDBDATAREADER,
它先要读出Net/About.aspx的内容,然后生成,其中Net/About.aspx中也有用到OLEDBDATAREADER,并且用完后关闭。
当WriteDr连接以后,读出Net/About.aspx的内容后,WriteDr就关闭了。
我想问的是,是不是在一个用户访问的时候,同一个,在这个WriteDr没循环完,只要Net/About.aspx中的DATAREADER关闭,WRITEDR也关闭,原理是不是他们使用的是同一个CONN。能有什么办法避免这种事情吗?好像说地有点乱,希望大家能明白。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货