我的剃刀頁面中有這個 IEnumerable 方法。
@if (Orders.Any())
{
<table class="table table-bordered">
<thead>
<th>Driver Name</th>
<th>Delivery Orders</th>
</thead>
<tbody>
@foreach(var objOrders in Orders)
{
<tr>
<th>
@objOrders.Driver.UserName
</th>
<th>
@objOrders.Driver.FullName.Count()
</th>
<td>
</td>
</tr>
}
</tbody>
</table>
}
這是從這里
private IEnumerable<OrderDTO> Orders { get; set; } = new List<OrderDTO>();
private bool IsLoading { get; set; } = true;
public async Task SearchDate()
{
Orders = await _orderRepository.GetDate(DateValue);
}
private async Task LoadOrders()
{
IsLoading=true;
StateHasChanged();
await SearchDate();
//Orders = await _orderRepository.GetDate(date);
IsLoading = false;
StateHasChanged();
}
和這里
public async Task<IEnumerable<OrderDTO>> GetDate(DateTime date)
{
if (date != null)
{
return _mapper.Map<IEnumerable<Order>, IEnumerable<OrderDTO>>
((IEnumerable<Order>)_db.Orders.Where(u => u.DeliveryDate == date));
}
else
{
return _mapper.Map<IEnumerable<Order>, IEnumerable<OrderDTO>>(_db.Orders);
}
}
現在,顯示是這樣的
|Driver Name | Number Delivery Orders |
| :--- | :----: |
| 1 | 1 |
| 1 | 1 |
| 2 | 1 |
|Kim1 | 4 |
我想這樣顯示
|Driver Name | Number Delivery Orders |
| :--- | :----: |
| 1 | 2 (Occurrences) |
| 2 | 1 (Occurrences) |
|Kim1 | 1 (Occurrences) |
我知道現在該Count()方法正在計算驅動程式名稱的長度,但是我如何對其進行編碼以使其回傳驅動程式名稱的出現。
謝謝你們。
uj5u.com熱心網友回復:
@foreach(var objOrders in Orders
.GroupBy(u => u.Driver.FullName)
.Select(group => new {
Count= group.Count(),
Key=group.Key }
)
)
設法做到這一點。感謝@Martin Costello
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/442872.html
下一篇:SpringMVC中的控制器建議
