Для школьного проекта я делаю приложение в ASP.net Core, используя Entity Framework.Для этого приложения я должен выполнить 5 различных проверок заказов, выполненных с SQL, заказы, которые соответствуют критериям sql, должны быть помещены в таблицу.Результаты должны быть размещены в одном и том же виде в другой таблице, соответствующей сработавшей проверке.
Я использую 2 модели: оповещения и заказы, в которых я присоединился к оповещениям и заказам, чтобы я мог получить идентификатор заказа, соответствующий оповещению (Проверьте)
Мое приложение состоит из EFRepository, содержащего следующие методы:
public IEnumerable<Alerts> GetAlertsByCheck(int checkNumber)
{
IEnumerable<Alerts> temp = null;
switch (checkNumber)
{
case 1:
temp = DB.Alerts.Where(e => e.Controle.Equals(CHECK_ONE));
break;
case 2:
temp = DB.Alerts.Where(e => e.Controle.Equals(CHECK_TWO));
break;
case 3:
temp = DB.Alerts.Where(e => e.Controle.Equals(CHECK_THREE));
break;
case 4:
temp = DB.Alerts.Where(e => e.Controle.Equals(CHECK_FOUR));
break;
case 5:
temp = DB.Alerts.Where(e => e.Controle.Equals(CHECK_FIVE));
break;
}
return temp;
}
Получение заказов для каждого оповещения
public IEnumerable<Orders> GetOrdersByAlert(IEnumerable<Alerts> alerts)
{
IEnumerable<Orders> temp = null;
List<Orders> list = new List<Orders>();
foreach (var alert in alerts)
{
Orders order = DB.Orders.First(e => e.Id == alert.Id);
list.Add(order);
}
temp = list;
return temp;
}
В следующем представлении я пытаюсьпоместите OrderID каждого чека в отдельную таблицу.Таким образом, таблица 1 должна содержать идентификаторы OrderID, где сработала проверка 1, таблица 2 должна содержать идентификаторы OrderID, где сработала проверка 2.
@using Domain.Models.TableModels
@model IEnumerable<Domain.Models.TableModels.Orders>
@{
ViewData["Title"] = "ResolvedIssuesOverview";
}
<!-- Check 1 table-->
<div class="row">
<h2>Resolved Issues Overview</h2>
<div class="col-md-12">
<h3>Check 1</h3>
<p>Total amount of orders from the last 72h is higher than € 100.000</p>
<table class="table table-striped">
<tr>
<th>Order ID</th>
<th>Status</th>
</tr>
@foreach (var order in Model ?? Enumerable.Empty<Orders>())
{
<tr>
<td>@order.Id</td>
<td>Resolved</td>
</tr>
}
</table>
</div>
<!-- Check 2-->
<div class="col-md-12">
<h3>Check 2</h3>
<p>Country is in FATF high risk list</p>
<table class="table table-striped">
<tr>
<th>Order ID</th>
<th>Status</th>
</tr>
@foreach (var order in Model ?? Enumerable.Empty<Orders>())
{
<tr>
<td>@order.Id</td>
<td>Resolved</td>
</tr>
}
</table>
</div>
Теперь в HomeController я дал методу метод id = 2 для тестирования,и он успешно разместил OrderID's из Check_two в таблице.
public ViewResult ResolvedIssuesOverview(int id2=2)
{
return View(AlertsRepository.GetOrdersByAlert(AlertsRepository.GetSolvedAlertsByCheck(id2)));
}
Теперь моя проблема в том, что я не могу понять, как я могу передать другие проверки представлению и поместить их в их собственную таблицу.
Чтобы лучше проиллюстрировать мой вопрос,Таблицы в представлении выглядят так:
+---------+------------------------+
| OrderID | Check |
+---------+------------------------+
| 1 | Invalid payment method |
| 2 | Invalid payment method |
+---------+------------------------+
+---------+------------------------+
| OrderID | Check |
+---------+------------------------+
| 3 | Payment aborted |
| 4 | Payment aborted |
+---------+------------------------+
Любая помощь будет принята с благодарностью!Заранее спасибо:)