Я создаю простую систему очередей, моя кнопка 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()
, он рендерит данные Dequeued из моего представления 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;
}