我使用foreach循环呈现HTML,如下所示:
@foreach (var item in list)
{
// some html
}
但似乎它在开始呈现HTML之前迭代整个循环。我想逐个显示(渲染)html(即如果循环迭代100次,那么它应该逐个渲染/显示HTML到100)。
注意:为了验证它在循环结束时开始呈现HTML,我确实在循环中放置了thread.sleep(100)
@foreach (var item in list)
{
Thread.Sleep(100);
// some html
}
如果10 mseconds
开始呈现没有sleep
的HTML,那么在放置thread.sleep
之后,在开始呈现HTML之前需要1000 mseconds
。
关于我应该做什么的任何建议,以便在循环完成之前UI不会被冻结?它应该在每次迭代完成时呈现HTML。谢谢。
答案 0 :(得分:1)
如果您在Razor视图中执行此操作,则所有HTML都将在服务器上呈现 BEFORE 将其发送到客户端。
如果您想逐个呈现某些内容,则必须通过JavaScript在客户端上执行此操作。