数据显示很奇怪的问题,请大家帮忙 刚开始显示正常,过一段时间(有时候1天,有时候几天),DataList数据就不显示了(DataList在一个ascx控件内),就是显示空白,但ascx的静态文字可以看到.每次我只能重新上传web.config文件才能让DataList的数据重新显示出来.不知道这是什么问题引起的?郁闷啊.还有,我们是租用的国外空间. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 重新上传web.config文件 会应用程序重新启动所以可能是你程序的问题,你的程序占用了数据库资源或者内存资源或者其它非托管资源如果不及时释放,就会出现CLR或者资源占用错误如果这个时候你没有进行错误处理,错误会抛出但是如果你的错误处理不合适,或者只是捕捉了这个异常,而没有进行任何处理一些函数可能会返回空值所以应该仔细检查你的代码,尤其是错误处理部分找到了错误以后,才能知道原因就知道到底是占用了什么资源 “重新上传web.config文件 才能让DataList的数据重新显示出来”只是表面现象,其实真正原因是“重新启动该应用程序 才能让DataList的数据重新显示出来” 租用的国外空间?是不是编码不一致?可能有些不支持Unicode TO: qiuji(忆秋季)关键是开始一段时间都是好的,过了1天或者几天以后数据显示不出来了,重启应用程序又好了,所以有点郁闷.不知道问题出在哪. 重新上传web.config文件 会应用程序重新启动所以可能是你程序的问题,你的程序占用了数据库资源或者内存资源或者其它非托管资源如果不及时释放,就会出现CLR或者资源占用错误如果这个时候你没有进行错误处理,错误会抛出但是如果你的错误处理不合适,或者只是捕捉了这个异常,而没有进行任何处理一些函数可能会返回空值所以应该仔细检查你的代码,尤其是错误处理部分找到了错误以后,才能知道原因就知道到底是占用了什么资源 我现在暂时把该ascx内的<%@ OutputCache Duration="3600" VaryByParam="none" VaryByControl="none" Shared="true"%>去掉了,看看是不是这里出的问题,不过我估计这里出问题的可能性不大.如果这里出问题的话,那该ascx控件内的其他静态文字也应该显示不出来的.现在先暂时去掉看看,一步步来,只是这个找问题的时间要很久. 因为相关的站点我放在我们自己的服务器上一直都没问题的. 赞同time_is_life(今夜太冷) 的说法,其它的想不出什么原因了 数据层代码:private const string SQL_SELECTALLBYPID_FABRICTYPE = "TypeSelectByPID";public IList GetFabricType(int pId) { IList fabricType = new ArrayList(); Database db = DatabaseFactory.CreateDatabase("SinoEn"); DBCommandWrapper dbc = db.GetStoredProcCommandWrapper(SQL_SELECTALLBYPID_FABRICTYPE); dbc.AddInParameter("@PID",DbType.Int32,pId); using(IDataReader dataReader = db.ExecuteReader(dbc)) { while(dataReader.Read()) { FabricTypeInfo fabricTypeInfo = new FabricTypeInfo(); fabricTypeInfo.ID = Convert.ToInt32(dataReader["ID"]); fabricTypeInfo.TypeName = dataReader["TypeName"].ToString(); fabricTypeInfo.PID = Convert.ToInt32(dataReader["PID"]); fabricTypeInfo.Number = dataReader["Number"].ToString(); fabricTypeInfo.Hits = Convert.ToInt32(dataReader["Hits"]); fabricType.Add(fabricTypeInfo); } } return fabricType; }pId为0,数据库里有数据记录的.另外,数据存取用的是微软最新的企业应用块(7月版的应用块). 关于网页请求及回发的问题 (远程服务器返回错误: (504) 网关超时。) asp 连接sql2000报以下错误求高手 这种排序该怎么实现好? asp.net 获得上两次的URL css 真的不能控制HyperLink控件的鼠标移入移出事件吗? 有关table的问题 在通过COMMAND插入一条记录的时候提示:对象必须实现 IConvertible,是什么错误啊? 防止多次点击,div的显示与隐藏,求指点,已经纠结很久了 有关“JavaScriptSerializer 类”序列化对象的问题 得不到 图片的长和宽啊?上传图片的错误 找不到那里错了。没分了。 _______一件极其令人费解的事情
所以可能是你程序的问题,你的程序占用了数据库资源或者内存资源或者其它非托管资源
如果不及时释放,就会出现CLR或者资源占用错误
如果这个时候你没有进行错误处理,错误会抛出
但是如果你的错误处理不合适,或者只是捕捉了这个异常,而没有进行任何处理
一些函数可能会返回空值
所以应该仔细检查你的代码,尤其是错误处理部分找到了错误以后,才能知道原因
就知道到底是占用了什么资源
只是表面现象,其实真正原因是
“重新启动该应用程序 才能让DataList的数据重新显示出来”
关键是开始一段时间都是好的,过了1天或者几天以后数据显示不出来了,重启应用程序又好了,所以有点郁闷.不知道问题出在哪.
所以可能是你程序的问题,你的程序占用了数据库资源或者内存资源或者其它非托管资源
如果不及时释放,就会出现CLR或者资源占用错误
如果这个时候你没有进行错误处理,错误会抛出
但是如果你的错误处理不合适,或者只是捕捉了这个异常,而没有进行任何处理
一些函数可能会返回空值
所以应该仔细检查你的代码,尤其是错误处理部分找到了错误以后,才能知道原因
就知道到底是占用了什么资源
private const string SQL_SELECTALLBYPID_FABRICTYPE = "TypeSelectByPID";
public IList GetFabricType(int pId)
{
IList fabricType = new ArrayList();
Database db = DatabaseFactory.CreateDatabase("SinoEn");
DBCommandWrapper dbc = db.GetStoredProcCommandWrapper(SQL_SELECTALLBYPID_FABRICTYPE);
dbc.AddInParameter("@PID",DbType.Int32,pId);
using(IDataReader dataReader = db.ExecuteReader(dbc))
{
while(dataReader.Read())
{
FabricTypeInfo fabricTypeInfo = new FabricTypeInfo();
fabricTypeInfo.ID = Convert.ToInt32(dataReader["ID"]);
fabricTypeInfo.TypeName = dataReader["TypeName"].ToString();
fabricTypeInfo.PID = Convert.ToInt32(dataReader["PID"]);
fabricTypeInfo.Number = dataReader["Number"].ToString();
fabricTypeInfo.Hits = Convert.ToInt32(dataReader["Hits"]);
fabricType.Add(fabricTypeInfo);
}
}
return fabricType;
}
pId为0,数据库里有数据记录的.
另外,数据存取用的是微软最新的企业应用块(7月版的应用块).