我正在创建一个简单的排队系统,我的按钮BtnNext()
使已排队的数据出队,并将其呈现在我的视图和CallScreen视图上。
这是我的BtnNext()
按钮
public ActionResult BtnNext()
{
System.Threading.Thread.Sleep(500);
var first = MyQueue.todayQueue.Dequeue();
MyQueue.todayQueue.Count();
TempData["QueueItem"] = first;
TempData.Keep();
return PartialView("_queuenumber");
}
当我按下BtnNext()
时,它将从我的CallScreen视图中渲染出队数据,并每1秒自动刷新一次。
但是我的问题是我需要按下BtnFinish()
按钮以清除我的CallScreen视图并且什么也不显示,现在它只显示前一个QueueNumber
,我希望将其清除。
这是我的BtnFinish()
的控制者
public PartialViewResult BtnFinish()
{
System.Threading.Thread.Sleep(300);
MyQueue.todayQueue.Count();
TempData.Keep();
return PartialView("_finish");
}
这是我的CallScreen视图:
@{
var item = (Rosh.QueueMe.Web.Models.MyQueue)TempData["QueueItem"];
}
<table id="auto">
<tr style="font-family:'Arial Rounded MT'">
<th class="tickets">TICKETS</th>
<th class="name">NAME</th>
<th class="counter">COUNTER</th>
<th class="service">SERVICE</th>
</tr>
<tr class="data">
<td>#@item.QueueNumber</td>
<td>@item.Name</td>
<td>Desk 1</td>
<td>@item.ServiceId</td>
</tr>
</table>
它从我的TempData["QueueItem"];
我尝试在呼叫屏幕视图中使用此代码,但由于某种原因,它给我一个错误,即我的@item.QueueNumber
,@item.Name
和@item.ServiceId
在当前上下文中不再存在。
@if(TempData["QueueItem"] != null)
{
var item = (Rosh.QueueMe.Web.Models.MyQueue)ViewBag.QueueItem;
}
答案 0 :(得分:0)
我认为您只需要
ViewData.Clear();