RAZOR ビューを使用する vb.net MVC3 アプリケーションがあります。一部の関数は、データベースからデータをコンパイルしているため、完了するまでに時間がかかります。この長い待機中、ブラウザ画面は白く、アクティビティ リング以外に想定されていることを行っている兆候はありません。私がやりたいのは、プログレスバーを作成し、カウントメソッドでいくつかの簡単な計算を使用してプログレスバーの完了率を決定し、これを真っ白なブラウザ画面ではなく画面に表示することです..私はする必要があると確信しています.ある種の 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
Razor ビューは次のとおりです。
@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>
これに単純なプログレスバーを追加する方法についてのアイデアは、コントローラー自体によって起動される必要があると想定しています...