Asp.net mvc MVC Razor在foreach循环的每次迭代中呈现HTML

Asp.net mvc MVC Razor在foreach循环的每次迭代中呈现HTML,asp.net-mvc,asp.net-mvc-4,razor,foreach,html-helper,Asp.net Mvc,Asp.net Mvc 4,Razor,Foreach,Html Helper,我使用foreach循环呈现HTML,如下所示: @foreach (var item in list) { // some html } 但它似乎是在开始呈现HTML之前对整个循环进行迭代。我希望逐个显示(呈现)html(即,如果循环迭代100次,则应该逐个呈现/显示html到100次) 注意:为了验证它在循环结束时开始呈现HTML,我确实在循环中放置了一个thread.sleep(100) @foreach (var item in list) {

我使用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
     }
如果不使用
sleep
开始呈现HTML需要
10毫秒,那么在放置
thread.sleep
之后,开始呈现HTML需要
1000毫秒


有没有关于我应该怎么做的建议,以便在循环完成之前UI不会冻结?它应该在每次迭代完成时呈现HTML。谢谢。

如果您在Razor视图中执行此操作,则在将HTML发送到客户端之前,所有HTML都将在服务器上呈现


如果您想一个接一个地呈现某个内容,那么您必须通过JavaScript在客户端执行该操作。

如果您在Razor视图中执行此操作,那么在将HTML发送到客户端之前,所有HTML都将在服务器上呈现


如果你想一个接一个地呈现某些内容,那么你必须通过JavaScript在客户端上进行呈现。

我注意到,在大多数网站上,当页面打开时,内容开始呈现,并不断加载和进一步呈现记录/内容,那么这些呢?没有服务器端脚本或任何方法可以逐个呈现记录吗?我注意到在大多数网站上,当页面打开时内容开始呈现,并不断加载和进一步呈现记录/内容,那么这些呢?没有服务器端脚本或任何方法可以逐个呈现记录吗?