C# 数据表选择函数

C# 数据表选择函数,c#,datatable,C#,Datatable,尝试选择“预期关闭日期”小于今天日期的字段,并将其从表中删除。但是,在“closure”运算符之后出现错误,例如缺少操作数 DateTime Tdy=DateTime.Now; var rows = dt.Select("Expected closure date < "+Tdy+""); foreach (var row in rows) row.Delete(); 您需要将日期包装为八字: dt.Select("myDateTimecolumn < #"

尝试选择“预期关闭日期”小于今天日期的字段,并将其从表中删除。但是,在“closure”运算符之后出现错误,例如缺少操作数

DateTime Tdy=DateTime.Now;
 var rows = dt.Select("Expected closure date < "+Tdy+"");
 foreach (var row in rows)
         row.Delete(); 

您需要将日期包装为八字:

dt.Select("myDateTimecolumn < #" + tdy.ToString("MM/dd/yyyy") + "#");

这就是你需要的,测试过的

var rows = dt.Select(string.Format("[Expected closure date] < '{0}'", Tdy));
var rows = dt.Select(string.Format("[Expected closure date] < '{0}'", Tdy));
using System;
using System.Data;


namespace ConsoleApplication5
{
  class Program
  {    

    static void Main(string[] args)
    {
      DataTable dt = new DataTable();
      string col = "Expected closure date";
      dt.Columns.Add(col,typeof(DateTime));

      dt.Rows.Add(DateTime.Now.AddDays(-1) );

      Console.WriteLine("Total rows in dt " + dt.Rows.Count);

      DateTime Tdy = DateTime.Now;
      var rows = dt.Select(string.Format("[Expected closure date] <= '{0}'", Tdy));
      foreach (var row in rows)
        row.Delete();
      Console.WriteLine("Total rows in dt " + dt.Rows.Count);

      Console.ReadLine();

    }
  }
}
Total rows in dt 1
Total rows in dt 0