我有一个使用 RAZOR 视图的 vb.net MVC3 应用程序。有些功能需要很长时间才能完成,因为它们是从数据库中编译数据。在这漫长的等待过程中,浏览器屏幕是白色的,除了活动环之外,没有任何迹象表明它正在做它应该做的事情。我想做的是创建一个进度条,在 count 方法上使用一些简单的数学来确定进度条的完成百分比,并将其显示在屏幕上而不是纯白色的浏览器屏幕上。我确信我需要使用某种 Jquery 小部件执行此操作。并查看了整个谷歌,但似乎没有什么能满足我在这里需要的东西。当显示白屏直到完成时调用的控制器函数如下:
Function beginArchive()
Dim cList As List(Of cours) = db.courses.ToList
For Each x In cList
Dim indCourse = x
Dim courHfile As String = archiveFiles(x.course_id)
Dim arcCourse As New archive
arcCourse.cDesc = indCourse.course_description
If Not String.IsNullOrEmpty(courHfile) Then
arcCourse.cHandouts = courHfile
End If
arcCourse.cHours = indCourse.course_hours
arcCourse.conNum = Convert.ToInt16(indCourse.courseNum)
arcCourse.cPre = indCourse.course_prefix
arcCourse.cRef = indCourse.course_ref
arcCourse.cSpeaker = indCourse.course_speaker
arcCourse.cTitle = indCourse.course_title
db.archives.AddObject(arcCourse)
db.SaveChanges()
Dim testSuccess As Integer = delOldFiles(indCourse.course_id)
Next
Return RedirectToAction("Index", "Admin")
End Function
剃刀视图是这样的:
@Code
ViewData("Title") = "Archive Previous Conf. Handouts"
End Code
<fieldset>
<h2>You are about to archive all handouts from last years conference. If you continue all of those handouts will be moved to the archive</h2>
<div id="sidebar3">
<p>
@Html.ActionLink("Begin Archive", "beginArchive","handoutArchive")
@Html.ActionLink("Back to Admin Tools", "Index", "Admin")
</p>
</div>
</fieldset>
关于如何添加一个简单的进度条的任何想法,我假设必须由控制器本身触发......