如何在c#中使用EF从MySQL表中获取最初和最后日期

本文关键字:获取 MySQL 最后 日期 EF | 更新日期: 2023-09-27 18:14:43

这是我获得第一次约会的代码。它工作,我可以在dateTimepicker中显示日期。

private void ShowButton_Click(object sender, EventArgs e)
{
    String constring = "datasource=;port=3306;username=;password=";
    MySqlConnection connection = new MySqlConnection(constring);
    int n = Convert.ToInt32(textBox1.Text);
    testEntities dc = new testEntities(); 
    var getfirstDate = dc.table.Where(b => b.number == n).First();
    dateTimePicker1.Text =Convert.ToString (getfirstDate.date);
}

但是,当我试图对最后一个日期做同样的事情时

var getlastDate = dc.table.Where(b => b.number == n).Last();

出现错误信息:

LINQ to Entities不识别方法'project '。

不能将此方法转换为存储表达式。

如何在c#中使用EF从MySQL表中获取最初和最后日期

您可以使用OrderByDescending() + First():

var lastDate = table.Where(b => b.number == n)
     .OrderByDescending(b => b.Date)
     .First();

为什么不使用排序呢?

var getlastDate = dc.table.Where(b => b.number == n).OrderByDescending(b => b.Date).First();
//alternatively to using Where().First();
var getlastDate = dc.table.First(b => b.number == n).OrderByDescending(b => b.Date)