小弟C#菜鸟,因为项目要用到ASP.NET编一个网页动态刷新后端C#代码采集到的硬件数据,现在硬件的数据已经采到了后端。问题是如何将数据传到前端并在网页上刷新。
起初我用了<%= %>的方法,但是只能加载后端的初始值,不能刷新。
后来,添加了Ajax拓展控件 ScriptManager、Updatepanel和Timer ,并在Updatepanel中添加了一个Textbox用于传数据,每隔10秒刷新一次。这样做虽然前端网页能观察到动态刷新了(手动在TextBox输入一个别的值,过10秒会刷新到原来的值),但还是初始值在一直刷新,就好像是加载页面的时候前端从后端拿了一次数据存到了前端的某个地方,然后一直在刷新这个数据一样。
费解,求问各位大神如何解决。这是设的初值!这是前端调用Ajax控件的代码这是后端向前端穿数据的代码(通过TextBox传送,Timer触发UpdatePanel)打开硬件和服务器传输数据后,后端C#显示数据已经更新但是前端一直显示的是初始值18
起初我用了<%= %>的方法,但是只能加载后端的初始值,不能刷新。
后来,添加了Ajax拓展控件 ScriptManager、Updatepanel和Timer ,并在Updatepanel中添加了一个Textbox用于传数据,每隔10秒刷新一次。这样做虽然前端网页能观察到动态刷新了(手动在TextBox输入一个别的值,过10秒会刷新到原来的值),但还是初始值在一直刷新,就好像是加载页面的时候前端从后端拿了一次数据存到了前端的某个地方,然后一直在刷新这个数据一样。
费解,求问各位大神如何解决。这是设的初值!这是前端调用Ajax控件的代码这是后端向前端穿数据的代码(通过TextBox传送,Timer触发UpdatePanel)打开硬件和服务器传输数据后,后端C#显示数据已经更新但是前端一直显示的是初始值18
但是如果每次提交都初始化lon的话,那我处理完的lon岂不是永远都传不过去了
只是应该如何请求服务端的数据
我查看了http响应,正常的10秒一次
只是传回来的值一直都是初始值
应该怎么取数据 用什么语句呀?
应该怎么取数据 用什么语句呀?“取数据”没有什么问题(虽然你没有正确贴出来)。关键的基础知识是,asp.net 使用 ViewState 集合来保存页面持久化数据,并不是什么 static 变量。你为 static 变量 long 赋值,它无法在页面下一次被创建时自动恢复上一次所赋值的结果,而是重新初始化为 18。你用 ViewState["lon'] 则可以持久化地在页面实例之间保持状态值。