我正在尝试将传入请求的时间戳与数据库存储值进行比较.SQL Server当然会保留一些毫秒的精度,当读入.NET DateTime时,它包括那些毫秒.但是,对系统的传入请求不提供该精度,因此我需要简单地删除毫秒.
我觉得我错过了一些明显的东西,但我还没有找到一种优雅的方法(C#).
我的代码在C#.NET中我正在使用Kendo Grid版本2013.2.716.340和服务器绑定来显示网格中的数据.
在Kendo UI Grid中,我有一个dateTime列,但列过滤器输入只有一个日期选择器但没有时间选择器.因此,如果我选择该选项IsEqualTo并给出一个日期,那么我得到零结果,因为时间00:00:00在过滤器中设置,但列有一些时间值.我想添加时间选择器和日期选择器.
我尝试在我的专栏上执行此操作,但它不起作用:
columns.Bound(o => o.Time).Title("Time").Format("{0:MM/dd/yyyy HH:mm:ss}").Filterable(f => f.UI("DateTimeFilter")).Width("5%");
Run Code Online (Sandbox Code Playgroud)
并已应用以下脚本:
<script type="text/javascript">
function DateTimeFilter(control)
{
$(control).kendoDateTimePicker();
}
</script>
Run Code Online (Sandbox Code Playgroud)
上面的代码在我datetime从精选中选择时起作用datetimepicker但在我选择时它不起作用isequalto.例如:如果我datetime在我的剑道网格列中显示"12/21/2013 07:15:45",当我将其复制datetime到isequalto过滤器下的选项时,它不会提供任何数据.
此外,我尝试了此链接提供的示例 它也没有在我的情况下工作.此链接上的示例使用Ajax绑定.我需要在服务器绑定的情况下应用它.
这是附加图像,显示我想要应用的内容.这是图像的链接.如果我将datetime网格中显示的内容复制到过滤器中它应该正确过滤并给出结果.
如果有人能帮助我解决我的问题,我将非常感激.提前致谢.