Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 带时区的where子句_C#_Linq To Sql - Fatal编程技术网

C# 带时区的where子句

C# 带时区的where子句,c#,linq-to-sql,C#,Linq To Sql,我正在为linq到sql查询编写where子句。假设一个列名是AppointTime,它存储在GMT时区中。我正在编写的查询是动态的,UI允许用户选择今天、昨天、2天前、3、5、10、30、60、90天前的约会集 我有一个十进制的用户时区(即-9.0代表美国太平洋标准时间) 编写where子句的最佳方法是什么,以便希望查看2天前设置的约会的用户出现在查询的结果集中。类似的内容 int days = 2; // set by UI? var upcoming = from appointm

我正在为linq到sql查询编写where子句。假设一个列名是AppointTime,它存储在GMT时区中。我正在编写的查询是动态的,UI允许用户选择今天、昨天、2天前、3、5、10、30、60、90天前的约会集

我有一个十进制的用户时区(即-9.0代表美国太平洋标准时间)

编写where子句的最佳方法是什么,以便希望查看2天前设置的约会的用户出现在查询的结果集中。

类似的内容

int days = 2; // set by UI?
var upcoming =
    from appointment in dc.Appointments
    where appointment.AppointTime.AddHours(userTZ) < DateTime.UtcNow.AddDays(days)
          && appointment.AppointTime > DateTime.UtcNow 
    orderby appointment.AppointTime ascending
    select appointment;
int days=2;//由用户界面设置?
var即将到来=
来自华盛顿特区的任命。任命
其中appointment.AppointTime.AddHours(userTZ)DateTime.UtcNow
orderby appointment.AppointTime升序
选择预约;

我承认我不完全清楚你到底想得到什么信息。。。但这应该包含足够的线索来编写所需的查询。记住两件事-
Addx()
日期时间上的函数可以取负值进行减法;未来的时间比过去的时间要长,在比较两个
日期时间时

能否为您的表提供架构?该表包含一列AppointSetDateTime,它是设置约会的时间。例如,如何检索3天前设置的所有约会。我有一个十进制数,它被传递给包含用户时区(即userzone=-9.00)的函数。顺便说一句,如果您使用的是LINQ to SQL,那么您应该使用LINQ to SQL标记,而不是LINQ。“linq”指的是所有的linq技术。是的,AddHours是我想要的。是否也有减少小时数的情况,因为还有一种情况是用户选择了在过去x天内未设置的任命。@frenchie啊,当然你不想显示已经通过的任命。让我们添加另一个条件,以排除少于现在的约会时间。(见更新)