c# - 在 CSHTML 表中显示 +100.000 个条目需要花费大量时间
问题描述
我一直在研究我的应用程序,该应用程序显示一个包含实际市场上 Cars 条目的表格。由于此应用程序必须处理大量信息(超过 100.000 个条目),因此我无法将它们显示到 CSHTML 中的表格中(加载时间过长,可能超过 10 分钟)。
我将分享一些代码来向您展示它的实际编码方式:
public partial class Car
{
public string CarID { get; set; }
public string Brand { get; set; }
public string Price { get; set; }
}
这是我的 Car.cs 类,这就是它在 CSHTML 表中的显示方式:
<script>
$(document).ready(function () {
$('#carTable').DataTable(
{
lengthMenu: [5, 10, 25, 50],
}
);
<script>
<table id="carTable" class="table table-striped table-responsive-sm table-bordered">
<thead>
<tr>
<th>CarID <i class="fa fa-sort"></i></th>
<th>Brand <i class="fa fa-sort"></i></th>
<th>Price<i class="fa fa-sort"></i></th>
</tr>
</thead>
<tbody>
@foreach (var car in Model.CarsList)
{
<tr>
<td data-sortable="true">@car.CarID</td>
<td data-sortable="true">@car.Brand</td>
<td data-sortable="true">@car.Price</td>
}
</tr>
}
</tbody>
</table>
这就是我如何在我的控制器中将它们添加到我的 ViewModel 中(它只有一个属性 --> IEnumerable CarsList):
public async Task<IActionResult> ShowCars(){
CarViewModel cVM = new CarViewModel();
var carsInMyDB = _context.Cars.ToList();
cVM.CarsList = carsInMyDB;
return View(cVM)
}
如前所述,必须在此表中加载超过 100.000 个条目,并且正确显示它们需要花费太多时间。
我可以提出哪些建议/更改来缩短加载时间?
感谢您的时间和答案!:D
解决方案
分页可能会有所帮助。此外,如果您希望所有这些都在一个页面上,请阅读延迟加载。
推荐阅读
- pine-script - 仅当信号在 TSI 指标中穿过中线时才使用 plotchar
- angular - 使用烧瓶将静态文件提供给角度
- node.js - 我尝试从 multipart api 上传文件和文本数据,但即使我使用 multer 也无法获取文件
- c - 使用 calloc() 存储地址
- apache-spark - 在同一个 Spark 会话中运行多个 Spark Kafka 结构化流查询会增加偏移量但显示 numInputRows 0
- swift - 从 swift 背景到前景时无法调用 ViewWillAppear
- pyspark - 在 pySpark 中过滤有关薪水的数据
- android - 使用 AlertDialog 时,我无法更新和删除 Firebase 数据库中的数据
- ios - iOS 迅捷 | 没有得到最新的变量值
- r - 使用 ggmap 和 googleAuthR 在 R 图中使用地图的注册