gpt4 book ai didi

c# - 显示某些进程的进度的最佳方式?

转载 作者:太空宇宙 更新时间:2023-11-03 14:09:47 25 4
gpt4 key购买 nike

我不知道该怎么做,但我认为这是可能的。我想做的是在我的 View 中显示某些过程(循环)的进度。

我正在使用 C# ASP.NET MVC3/RAZOR

代码示例:

public ActionResult Index()
{
for (int i = 0; i < 100; i++)
{
System.Threading.Thread.Sleep(100); // Simulate...
}

return View();
}

在我看来,我只想制作像 44/100 这样的简单文本。

这是否可能,如果可能,那么实现这一目标的最佳方式是什么?

最佳答案

BNL 的上述评论是正确的。

  1. 使用任务并行库在不同的线程中启动您的任务。更新此任务中的任务进度。
  2. 编写一个使用 ajax 每隔几秒轮询一次进度的操作方法。
  3. 根据进度更新您的用户界面。

您如何跟踪进度?

  1. 在数据库中创建一个任务标识符(比如一个包含 2 列的表:一个 guid 和一个进度值)。
  2. 从操作方法中返回任务标识符值。
  3. 在您的 ajax 调用中发送任务标识符,这样您就可以告诉服务器为您提供指定任务的进度。

是的,值得重复:不要在网络服务器线程中运行长时间的任务。运行 Windows 服务并让它为您运行任务。

关于c# - 显示某些进程的进度的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8218435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com