我有一个处理数据的页面。它经历了一系列的10个步骤。我希望页面在每个步骤后显示状态。即。在步骤1完成数据处理后打印“步骤1完成”然后在步骤2完成数据处理后添加文本“步骤2完成”等。如何在没有硬回发的情况下仅使用C#执行此操作?或者我是否必须使用AJAX / Javascript或页面回发?
我一直在玩updatepanels。一个围绕整个步骤。或者每个步骤周围的更新面板,然后以编程方式调用按钮单击。我能得到的唯一结果是在处理结束时一次显示所有文本。
我一直绞尽脑汁,无休止地搜索谷歌。希望有人对我有一个想法。谢谢!
答案 0 :(得分:0)
我建议使用ajax -
服务器端: 在您的服务器上创建一个新的操作方法(假设它是MVC),使用此操作方法来查询任务的状态。
public string QueryStatus()
{
return Session["progress"].ToString();
}
当任务进行到下一步时,更新变量以指示此情况(在数据库或会话中)。
Session["progress"] = "Step Four";
客户端:
定期调用action方法并相应地更新页面上的元素。
<script>
$.ajax('/Server/QueryStatus').done(function(response)
{
$('#progressElement').innerHTML = response;
})
</script>