- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
目前我正在使用 DateTime.Now.ToLongDateString()
来设置日期属性,尽管我想在日期中提供更详细的信息。目的是根据项目的日期执行排序,当前将以 2013 年 7 月 4 日星期四
格式给出日期。如果多个项目在同一天具有相同的日期属性,则不会执行排序。是否有 DateTime.Now 函数允许带有秒的日期属性?
请注意,日期和年份仍必须包括在内,因为排序可能会持续几天、几年,但也可能在同一天出现多个项目实例。您会提出什么建议,或者是否有更好的方法来解决这个问题?此外,这必须适用于任何文化和任何时区。
编辑
在我的 MainPage 中,我用一组图片填充名为 Recent
的列表框。在我的设置页面中,用户可以选择升序或降序排序,并且在填充列表框之前必须根据此对集合进行相应排序。
MainPage.xaml.cs
protected override void OnNavigatedTo(NavigationEventArgs e)
{
ObservableCollection<Selfie.Models.Picture> listItems = new ObservableCollection<Selfie.Models.Picture>(PictureRepository.Instance.Pictures);
if (Settings.AscendingSort.Value)
{
listItems.OrderBy(x => x.DateTaken);
Recent.ItemsSource = listItems;
}
else
{
listItems.OrderByDescending(x => x.DateTaken);
Recent.ItemsSource = listItems;
}
}
我有一个类将 DateTime 序列化和反序列化为图片的一个属性,它应用于 DateTaken
,我正试图对其进行排序。
最佳答案
编辑 2
好的,
您需要使用 OrderByDescending
函数的结果。
// listItems remains unaffected.
var sorted = listItems.OrderByDescending();
许多函数,尤其是作用于具有一定程度不变性的结构的扩展,不会影响源代码。纯函数应该以“流畅”的风格使用。返回值需要赋值才能使用。
所以,你需要做的,
Recent.ItemsSource = listItems.OrderBy(x => x.DateTaken).ToList();
值得考虑像 Resahrper 这样的工具捕获这样的问题。他们是common with the DateTime
Add
functions .
编辑
因为您在多元文化环境中工作,请确保您的所有日期都以 UTC 类型实例化和存储,这将对您有很大帮助。即使在单个时区工作但跨越夏令时边界进行排序。
使用 DateTime.UtcNow
代替 DateTime.Now
并将所有值保留为 UTC DateTime
,直到它们被导出或显示在 GUI 上.
这样您将比较苹果与苹果,您的排序将按预期工作,并且您的数据将更容易调试。
如果您开始做任何复杂的事情,就会发现 .Nets DateTime
实现中的漏洞。它正在考虑使用 Jon Skeet 和其他人在 noda time 上的工作这应该克服许多陷阱。
这不适用于跨时区、日历或仅限夏令时
如果出于某种原因确实需要可排序的 String
,请使用 DateTime.Now.ToString("o");
这使得字符串具有往返格式,
yyyy-MM-ddTHH:mm:ss.fffffff
很好地排序,包括小数部分。假设所有值都来自相同的时区和日历。
关于c# - 如何使用 DateTime.Now 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17474822/
遇到 now() 在 Postgres 中的函数中使用时的行为与“now”不同的问题。 drop table if exists test_date_bug; CREATE TABLE test_da
Google 刚刚发布了一项名为 Now on Tap 的 Google Now 新功能。它使用户能够从不同的应用程序 (The Verge video example) 获得上下文帮助。 是否只是截
performance.now() 和 Date.now() 有什么区别? 我是否应该将 performance.now() 视为 Date.now() 的替代品,因为 performace.now(
需要了解为什么我会得到时差。 这是我的 VBA 代码: Public OHLCArray(1 To 481, 0 To 28, 0 To 3) As Single 'debug stm
假设: rAF now时间是在所有回调集被触发时计算的。因此,在调用该帧的第一个回调之前发生的任何阻塞都不会影响 rAF now它是准确的——至少对于第一次回调来说是这样。 在触发 rAF 集之前进行
在我的程序中,每个表都有一列 last_modified: last_modified int8 DEFAULT (date_part('epoch'::text, now()::timestamp)
这是 Form1 中的代码: private DateTime dt; [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLa
什么时候应该使用 django 的 timezone.now() 以及什么时候应该使用 python 的 datetime.datetime.now()。 例如,在下面的 INSERT 中哪个更有意义
我正在将我的项目从 Django 1.8.2 升级到 1.9.7,我收到了这个警告: WARNINGS: my_app.my_model.date_available: (fields.W161) F
我应该在我的 Rails 应用程序中使用两者中的哪一个: DateTime.now or Time.now 在应用程序中同时使用两者有什么坏处吗? 在上述 (now) 示例中,两者之间是否存在任何差异
这个问题已经有答案了: Date vs new Date in JavaScript (8 个回答) 已关闭 6 年前。 我更多地谈论添加“new”如何影响变量,为什么/何时使用它,以及为什么我在打印
// Data-Bind is Here // Data-Bind is Here Show
我想做一个查询来检查今天是否有值,如果没有,则显示今天之前最近的条目。 这是我使用的查询: $variable = 'var1'; SELECT * FROM `table` WHERE `somet
我有一个表,其中有一列 event_time。如何选择 NOW() 之前的两行和 NOW() 之后的下一行,按 event_time 排序? 单个查询是否可行? 最佳答案 怎么样 SELECT * F
我如何向 Google Now 提供我的信息或我的应用程序数据卡片?有没有我可以使用的 API? 最佳答案 Google Now API 仅提供给在 Google 注册其应用程序的用户,它一直是私有(
...当我尝试执行如下所示的查询时: Session().query(MyMappedClass).update({MyMappedClass.time:func.now()}) 我得到: Inval
我试图了解 time.Now() 和 time.Now().Local() 之间的区别。我首先在我的笔记本电脑上打印它们(运行 Ubuntu 18.04): fmt.Println(time.Now(
假设我有一个包含三个字段的数据库表:id、内容和时间戳。 全天都会收到参赛作品,因此会有大量参赛作品,并且仍会定期收到参赛作品。 当访问者查看将显示条目的网页时,该页面将显示最近的 10 个条目以及访
我对夏令时处理有点困惑 设置.py: TIME_ZONE = 'Europe/London' USE_TZ = True 在 django shell 中: >>> from django.utils
我正在使用 node.js 和 now.js。一切正常。但我想制作一个可以从命令行运行的简单客户端(因此无需浏览器)。 http://nowjs.com/doc/example 在示例中,提供了一个
我是一名优秀的程序员,十分优秀!