在 VB.NET 中过滤日期时,将 select 与 DataTables 一起使用的最安全方法是什么?
这将在美国区域设置中工作
table.Select("[Date] = "#04/16/1984#"
这应该在德国区域设置中工作,但它会影响日期格式
table.Select("[Date] = "#16.04.1984#"
对我来说,数据表似乎不理解当前的区域设置。有没有办法以某种格式传递日期,以便它可以在任何区域设置中工作?
This will work in US regional settings
table.Select("[Date] = "#04/16/1984#"
This should work in german regional settgins but it thorws dateformat excpetion
table.Select("[Date] = "#16.04.1984#"
To me it seems that datatable does not understand current regional settings. Is there a way to pass date in a certian format, so it will work in any regional setting?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
要将日期与 DataTable.Select 一起使用,您需要使用 InvariantCulture Format 并将其括在 #
At Debug:
? TD.Select ("fisap=#9/25/2011 00:00#").长度
20
? TD.Select ("fisap=#9.25.2011 00:00#")(0)(10).ToString
“25/09/2011 0:00:00”-(西班牙语)
? TD.Select ("fisap=#9/25/2011 00:00#")(0)(10)
#9/25/2011# {日期}
To use Dates with DataTable.Select, you need use InvariantCulture Format and enclose it with #
At Debug:
? TD.Select ("fisap=#9/25/2011 00:00#").Length
20
? TD.Select ("fisap=#9.25.2011 00:00#")(0)(10).ToString
"25/09/2011 0:00:00" - (Spanish)
? TD.Select ("fisap=#9/25/2011 00:00#")(0)(10)
#9/25/2011# {Date}
我想这取决于底层数据存储日期和时间设置,因为它存储了信息。因此,如果您的客户端应用程序采用其他区域设置格式,请确保将日期字符串格式化为正确的数据库设置。
我认为这应该有帮助:
DateTime.Parse Method (String)< /代码>
I guess it depends on the underlying datastore date and time settings, as it is it that stores the information. So, if you're client application is in another regional settings format, make sure to format your date string into the right database settings.
I think this should be helpful:
DateTime.Parse Method (String)