在数据网格视图中显示最近的数据

本文关键字:数据 显示 最近 视图 数据网 网格 | 更新日期: 2023-09-27 17:56:14

我正在开发Windows应用程序。

在该应用程序中,我正在将数据保存在数据库中。

并在数据网格视图中检索数据。

为此,我使用以下代码:

var expenselist = db.SP_TodaysExpense().Where(a => a.Date <= DateTime.Now.Date).ToList();
DgvTodaysExpense.DataSource = expenselist;

上面的代码显示了数据库中的所有数据。但是,我想显示仅在打开应用程序后添加的数据。

那么我该怎么做呢?

提前谢谢你。

在数据网格视图中显示最近的数据

您需要在应用程序设置中保存日期时间值(右键单击项目 => Propeties => 设置):

注意:使用范围 => 用户为了能够更新值。

然后在程序中.cs主方法添加:

Properties.Settings.Default.LastOpenedTime = DateTime.Now;
Properties.Settings.Default.Save();

并将查询更改为:

DateTime queryTime = Properties.Settings.Default.LastOpenedTime ;
var expenselist = db.SP_TodaysExpense().Where(a => a.Date >= queryTime ).ToList();
DgvTodaysExpense.DataSource = expenselist;

有关应用程序设置的更多信息:阅读此处

OP:我想显示仅在打开应用程序后添加的数据。

根据您的要求,您需要获取应用程序的开始时间。 在设置中存储开始时间毫无意义(虽然它会起作用)。还有更好的选择:

  • 选项 1 - 使用当前进程StartTime获取应用程序的启动时间:

    var start = System.Diagnostics.Process.GetCurrentProcess().StartTime;
    
  • 选项 2 - 将 StartTime 存储在类Program静态属性中:

    public static DateTime StartTime { get; private set; } /* Usage: Program.StartTime */
    [STAThread]
    static void Main()
    {
        StartTime = DateTime.Now; 
        //...
    }