使用lambda表达式按日期筛选
本文关键字:日期 筛选 表达式 lambda 使用 | 更新日期: 2023-09-27 18:18:27
我正在建立一个ASP。. NET MVC网站,我被困在一个可能简单的问题。我正在尝试使用lambda表达式按日期过滤查询。我尝试过的其他过滤方式都很成功。这是我想要完成的。数据存储在SQL Server 2008 R2数据库中,数据类型为date
。我不确定这是否是结果不显示的原因。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Project.Models;
public class CreateController : Controller
{
// GET: Create
public ActionResult Create()
{
var dt = DateTime.Now.AddDays(-10);
var db = new Models.Entities();
var apps = db.tableName.Where(x => x.col1 == dt);
return View(apps.OrderBy(x => x.col2));
}
}
And my view
@model IEnumerable<Project.Models.table1>
@{
ViewBag.Title = "Project";
}
@foreach (var apps in Model)
{
<table>
<tr>
<th>col z</th>
<th>col x</th>
<th>col y</th>
<th>col w</th>
</tr>
<tr>
<td>@apps.col1</td>
<td>@apps.col2</td>
<td>@apps.col3</td>
<td>@apps.col4</td>
</tr>
</table>
}
//per lordkain:
var dt = DateTime.Now.Date.AddDays(-10);
//per Yuliam Chandra:
db.tableName.Where(x => x.col1 >= dt);
在您的代码中,c#数据类型是DateTime,而数据库中的数据类型是Date。
你可能想改变你的代码在你的创建函数
var dt = DateTime.Today.AddDays(-10);
现在的代码只有日期,没有时间!