Я разработал веб-сайт, используя основные страницы бритвы asp.net, но мне нужно добавить некоторые функции, используя основной сигнализатор asp.net, чтобы администратор мог видеть поступающие заказы в режиме реального времени.Это метод OnGet()
в моей модели страницы:
[BindProperty]
public List<OrderDetailsViewModel> OrderDetailsViewModelList { get; set; }
public void OnGet()
{
OrderDetailsViewModelList = new List<ViewModel.OrderDetailsViewModel>();
var orderHeaderList = _context.OrderHeaders
.Where(predicate: oh => oh.Status != StaticDetails.StatusCompleted && oh.Status != StaticDetails.StatusReady &&
oh.Status != StaticDetails.StatusCancelled).OrderByDescending(keySelector: u => u.PickUpTime).ToList();
foreach (var item in orderHeaderList)
{
if (_context.OrderDetails == null)
{
continue;
}
var individual = new OrderDetailsViewModel
{
OrderDetailsList = _context.OrderDetails.Where(predicate: o => o.OrderHeaderId == item.OrderHeaderId)
.Include(navigationPropertyPath: o => o.OrderHeader.ApplicationUser)
.ToList(),
OrderHeader = item
};
OrderDetailsViewModelList.Add(item: individual);
}
}
Поэтому я хочу загрузить все заказы из таблицы _context.OrderHeaders
, статус которой «отправлен» или не равен StatusCompleted
, StatusReady
или StatusCancelled
.Как мне сделать это, так как я не могу наследовать от класса PageModel и класса "MyHub" одновременно?Я также хочу, чтобы пользователь видел статус изменения заказа с «отправлено» на «выполнено» без обновления страницы.