如何将datetime与datepicker的值进行比较?

时间:2016-08-02 08:25:25

标签: c# sql linq datetime compare

我需要将所选日期与数据库中的日期进行比较,并在日期范围内返回值,但格式不正确。数据库中的日期格式为2016-01-02 00:00:00.000(来自其中一行)

我正在使用下面的代码,但无法比较并继续获取“字符串未被识别为有效的DateTime”。帮助

@Input() barData: any[];
@Input() barLabels: Array<string>;

public barChartData: any[];
public barChartLabels: string[];

ngOnChanges(){
    if(this.barData && this.barLabels){
        this.barChartData = this.barData;
        this.barChartLabels = this.barLabels;

        //Do anything else that relies on these arrays being defined.
    }
}

1 个答案:

答案 0 :(得分:0)

如果您想比较日期,请确保所有值均为DateTime类型,而不是String

尝试这样的事情:

DateTime startDate = RadDatePickerStart.SelectedDate;
EMCSettlementManager man = new EMCSettlementManager();
Grid.DataSource = man.GetSTL010(r => r.settlement_date >= startDate);

如果你想摆脱时间部分,你可以做这样的事情:

DateTime startDate = RadDatePickerStart.SelectedDate.Date;

如果数据库中的字段是字符串类型,而不是日期时间,请将其转换为日期(时间)类型。在任何地方使用字符串都是一个糟糕的选择,alsnog称为“字符串键入”。 (见:https://blog.codinghorror.com/new-programming-jargon/