方法报告进度

目标:找到一种方法报告进度的快速而肮脏的方法。

背景

我被要求采取当前长时间运行的过程,并阻止用户通过点击任何地方来中断它。 已经实现了锁定屏幕(只需使用进度框覆盖canvas),并且sofar工作正常。 但是,我被要求通过在此锁定屏幕上提供进度指示器来添加更多内容。 三个整数将是我可以使用的值(成功,失败,发送的项目)。

研究

我遇到的问题是不知道如何在Bing中提出问题以获得我想要的那种答案。 许多答案不断回来参考SQL报告,WinForms(我已经知道如何使用BackgroundWorker)或者只是不相关的东西。 我最接近的是这里,但答案是“使用AJAX”,这有点太不明确但我认为我得到了它的建议。

代码剪辑

首先,我将解释被调用的过程。 第一个是调用方法的那一刻。 我想我理解这里的代码,但感觉就像是“这里的数据的1:1关系,当你完成时回到我身边”。 在视图中:

$.ajax({ url: '@Url.Action("ThisPage", "Home")', cache: false, type: 'POST', data: form.serialize(), success: function (data) { *Clip* }, error: function () { *Clip* } }); 

其次,这件作品是控制器部分。 我把它简化为最基本的要素所以代码是不精确的。

 public String ThisPage(FormCollection ThisPage) { Int32 SucessfulCreations = 0; //The Sucess Variable Int32 UnsucessfulCreations = 0; //The Fail Variable List FilteredResults; //Count them up for Items Sent FilteredResults.ForEach(x=>{ if (x.Pass){ SucessfulCreations++; } else{ UnsucessfulCreations++; } }); 

所以我有我想要的变量,它是如何得到它们的呢? 我必须改变范围吗? 我想我做到了。

攻击解决方案

我真的不知道从哪里开始。

结论

我觉得我正盯着一个平坦的攀爬表面,我不知道先把握在哪里。 怎么办?