繁体   English   中英

过滤.ToList()

[英]Filtering .ToList()

我是ASP.NET MVC的新手。 我所拥有的:-具有一个表的数据库,该表在以下各列中包含生产数据:machine_name,good_parts,bad_parts,date。

基于ASP.NEt MVC5的MS教程,我已经构建了一个简单的应用程序来显示数据库中的数据。

我想要的是:我想按machine_name过滤结果,因为DB中的记录太多,并且浏览器在呈现结果时挂起。

控制器看起来像这样:

public ActionResult Index()
        {
           return View(db.DATABASE.ToList());

        }

查看页面:

<table class="table">
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.machine_name)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.date)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.good_parts)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.bad_parts)
        </th>
    </tr>

@foreach (var item in Model)
{
    if (item.machine_name == "machine_1")
    {
      <tr>
        <td>
            @Html.DisplayFor(modelItem => item.machine_name)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.data)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.good_parts)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.bad_parts)
        </td>
      </tr> 
     }
}

实现if语句后,view不从数据库返回任何记录。 预先非常感谢您拨冗向我解释基本知识。

马辛。

它就像

db.DATABASE.Where(x => x.MachineName == "something").ToList()

要么

db.DATABASE.Take(100).ToList()

Enumerable.Where方法

Queryable.Where方法

根据谓词过滤值序列。

Enumerable.Take(IEnumerable,Int32)方法

QueryableExtensions.Take方法(IQueryable,表达式>)

从序列开始处返回指定数量的连续元素

您可以尝试以下方法:

db.DATABASE.Where(item=>item.machine_name =="machine1").ToList();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM