为了账号安全,请及时绑定邮箱和手机立即绑定

asp.net 的页面为什么会卡在那里?总是遇到这样的问题,排查起来,感觉很无力。

asp.net 的页面为什么会卡在那里?总是遇到这样的问题,排查起来,感觉很无力。

拉丁的传说 2019-04-07 11:18:15
一开始以为是数据库死锁造成的后来设置了数据库锁超时时间为2000毫秒但是还是会出现页面一直卡在那里,不知道为什么?sqlserver设置锁超时时间setlock_timeout2000select@@lock_timeout难道代码逻辑有问题?C#代码如下:[down.aspx]stringidString=Request.QueryString["id"]??string.Empty;intid=0;if(!int.TryParse(idString,outid)){return;}vardbeh=Common.DB.Factory.CreateDBEntityHelper();if(int.TryParse(idString,outid)){vardlh=newDownLinkHelper();stringdownlink=dlh.GetDownlink(id);if(!string.IsNullOrEmpty(downlink)){Response.Redirect(Server.UrlPathEncode(Server.UrlDecode(downlink)));}}[DownLinkHelper.cs]usingSystem;usingSystem.Collections;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Web;usingSystem.Web.Caching;//////DownLink的摘要说明///publicclassDownLinkHelper{Common.DB.IDBEntityHelperdbh=Common.DB.Factory.CreateDBEntityHelper();publicstringGetDownlink(intval){varent=dbh.GetEntity("SoftID="+val);if(ent!=null){returnent.Address;}returnstring.Empty;}}usingSystem;usingSystem.Collections;usingSystem.Collections.Generic;usingSystem.Data;usingSystem.Data.Common;usingSystem.Data.SqlClient;//////SQLServerHandler的摘要说明///publicclassDBHelper:IDBHelper{stringconnectionString;publicstringConnectionString{get{returnconnectionString;}set{connectionString=value;}}publicDBHelper(stringconnectionString){this.connectionString=connectionString;}publicDbCommandCreateCommand(){returnnewSqlCommand();}publicDbConnectionCreateConnection(){returnnewSqlConnection(connectionString);}publicDbParameterCreateParameter(stringname,objectvalue){DbParameterparameter=CreateParameter();parameter.ParameterName=name;parameter.Value=value;returnparameter;}publicDbParameterCreateParameter(stringname){DbParameterparameter=CreateParameter();parameter.ParameterName=name;returnparameter;}publicDbParameterCreateParameter(){returnnewSqlParameter();}publicTExecuteScalar(stringsql,paramsDbParameter[]parameters){using(DbConnectionconnection=CreateConnection()){DbCommandcmd=CreateCommand();cmd.Connection=connection;cmd.CommandText=sql;cmd.Parameters.AddRange(parameters);connection.Open();objecto=cmd.ExecuteScalar();connection.Close();return(T)Convert.ChangeType(o,typeof(T));}}publicDbDataReaderExecuteReader(stringsql,paramsDbParameter[]parameters){DbConnectionconnection=CreateConnection();DbCommandcmd=CreateCommand();cmd.Connection=connection;cmd.CommandText=sql;cmd.Parameters.AddRange(parameters);connection.Open();returncmd.ExecuteReader(CommandBehavior.CloseConnection);}publicintExecuteNoneQuery(stringsql,paramsDbParameter[]parameters){using(DbConnectionconnection=CreateConnection()){DbCommandcmd=CreateCommand();cmd.Connection=connection;cmd.CommandText=sql;cmd.Parameters.AddRange(parameters);connection.Open();intnum=cmd.ExecuteNonQuery();connection.Close();returnnum;}}publicListGetDataList(stringsql,paramsDbParameter[]parameters){Listlist=newList();using(DbDataReaderreader=ExecuteReader(sql,parameters)){while(reader.Read()){Hashtablehs=newHashtable();for(inti=0;i
查看完整描述

2 回答

?
慕少森

TA贡献2019条经验 获得超9个赞

先确认是后端无响应还是前端浏览器挂了。
后端无响应时,在调试模式下一定会有异常发生,所以观察异常就行,
如果是前端渲染或者脚本导致卡死的。那么就需要一步一步检查代码了。
                            
查看完整回答
反对 回复 2019-04-07
?
冉冉说

TA贡献1877条经验 获得超1个赞

vardbeh=Common.DB.Factory.CreateDBEntityHelper();
这句有什么作用?
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 724 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信