如果可能的话,如何在不结束当前请求的情况下返回asp.net mvc3应用程序中的视图

时间:2011-08-08 23:17:08

标签: asp.net asp.net-mvc-3 razor

我试图在运行时从数据库中生成一个pdf,该应用程序工作正常,但我想知道我是否可以在生成pdf之前显示进度条with out using ajax.

这是我生成PDF的行动

public ActionResult GeneratePDF(){
    //This Generates PDF
    return ...
}

现在我想显示一个进度条信息,直到生成PDF,有点像这样

public ActionResult GeneratePDF(){
        //show progress
        ...............
        //This Generates PDF
        return View();
    }

public ActionResult ShowProgress(){
   //Show progress

    ......
    //return to GeneratePDF to show pdf when it is ready
    return RedirectToAction("GeneratePDF");
}

我很感激有关如何处理此事的任何建议。

2 个答案:

答案 0 :(得分:1)

我认为你不能这样做。即使您可以在服务器端继续这样做,一旦浏览器从其初始请求获得响应,它将不知道如何处理稍后出现的任何其他内容。

HTTP协议基本上建立在请求 - 响应,请求 - 响应的概念之上 - 它是驱动程序所在的浏览器,而不是服务器。 AJAX是实现这种客户端UI丰富性的方法。

答案 1 :(得分:0)

您可以使用JavaScript或jQuery来显示动画加载gif。

即:

$( '负载。')示出了();