当前位置:编程学习 > C#/ASP.NET >>

请教如何做出只触发一次的事件

--------------------编程问答-------------------- 之所以把触发 sql server job放在 timer里执行,是为了在执行时页面上要显示任务正在执行.所以至少要有一次page_load的postback, 把内容显示出来. nage  sql server job要执行三分钟至少. --------------------编程问答-------------------- LZ在page_load事件中添加一个!IsPostBack判断来试试,判断页面是否第一次载入
还有LZ用ajax的定时去请求的话   我建议用jquery+ajax比较好控制 用setInterval来定时请求就可以了 --------------------编程问答--------------------
引用 2 楼  的回复:
LZ在page_load事件中添加一个!IsPostBack判断来试试,判断页面是否第一次载入
还有LZ用ajax的定时去请求的话 我建议用jquery+ajax比较好控制 用setInterval来定时请求就可以了
--------------------编程问答--------------------
引用 1 楼  的回复:
之所以把触发 sql server job放在 timer里执行,是为了在执行时页面上要显示任务正在执行.所以至少要有一次page_load的postback, 把内容显示出来. nage  sql server job要执行三分钟至少.

再加一个变量,表示是否在执行job

job开始时,变量放入session里,执行完移除,下一次来请求先判断session里有没有变量 --------------------编程问答-------------------- 多谢楼上各位,把用textlabel改成session, 设置在page_load 里判断在第一次加载时(!Ispostback )初始化session并设timeout 10分钟.

然后触发sql server job两次的问题解决了. 

但悲剧的是又引入了新的问题. 发布app后如果debug是false,运行时会弹出错误, Sys.WebForms.PageRequestManagerErrorException an unknown error occured while processing the request on the server.The status code return from the server was 500.

然后网页就不会继续向下了.

查了一下说这个是asp.net的一个现有bug,但原因和解决办法没有看懂说得啥意思.

奇怪的是如果把webconfig里debug改成true, 运行就正常不跳出这个错误.

各位有招么,这到底是啥情况阿.....
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,