问题标签 [nodatime]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - DateTimeOffset 如何处理夏令时?
我将计划存储在数据库中作为一周中的一天、小时和分钟。读取数据时,我们DateTime
为下一次出现的那一天、小时和分钟创建一个对象,但我需要修改它以支持 DST。如有必要,我可以修改数据库。
我知道DateTimeOffset
存储 UTC 日期/时间和偏移量。我也从这个 MSDN 博客条目中知道DateTimeOffset
应该用于“使用夏令时”。
我正在努力理解的是DateTimeOffset
“夏令时如何工作”。我的理解是,夏令时是一个政治决定,不能从纯粹的抵消中推断出来。如果这个结构只存储一个偏移量而不是一个命名的时区或国家,它怎么可能对 DST 友好呢?
entity-framework - 如何告诉实体框架如何保存自定义类型的实例(可以存储为标量)
我的一个实体类可以作为 BIGINT 存储在 sql server 数据库中。我的问题是:如何获取实体框架上下文以了解如何存储和检索实体类的实例?
更多详情。我正在使用Noda Time,它可以表示比 SQL 或 .NET datetime 更广泛的日期范围(而且它是甜点浇头)。我的实体类 Happening 是 NodaTime 的 Instant 类的包装器。我可以使用 .SetFromLong(long instant) 和 .ToLong() 之类的方法从一个长事件中设置一个事件,并从事件中得到一个长事件。
目前我的模型正在工作,保存包含点网 DateTime 类型属性的类。相反,如果我想使用自定义类型“正在发生”的属性,我该如何告诉实体框架如何保存这些属性?
如果我正在阅读这篇关于建模和映射的文章,我是走在正确的轨道上还是错过了一些更简单的东西?
http://msdn.microsoft.com/en-us/library/bb896343.aspx
我正在使用实体框架 4。
c# - 使用 NodaTime 计算包含天数的时间段
例如,如果我有以下代码:
然后daysBetween.Days == 1
但是,我计算的范围需要算作 2 天。即它需要包括开始和结束日期。
实际方法可以取开始和结束日期(相隔不超过一年),并且需要计算天数。如果超过 31 天,则将剩余的天数作为整周数返回。
我的逻辑工作正常,但因为计数是唯一的,所以我有一天会出去。
我想我可以在从它startDate.addDays(-1)
创建之前做nodaStart
,但我想知道是否有更优雅/漂亮的方式让 noda 返回期间。
谢谢
更新:我已经阅读了该类的源代码,并且运算符已重载,因此我可以添加Period
+
c# - 如何正确处理 ZoneLocalMapping.ResultType.Ambiguous?
在我的代码中,我尝试处理 ZoneLocalMapping.ResultType.Ambiguous。线
抛出 InvalidOperationException 并显示消息“不应在类型不明确的结果上调用 EarlyMapping 属性”。
我不知道我应该如何处理它。你可以给我一个例子吗?
这就是我的代码的样子:
如果我查看 ZoneLocalMapping 类,我会看到以下代码:
这就是我收到异常的原因,但我应该怎么做才能获得 EarlyMapping?
javascript - 如何获取本地时间,而不是服务器时间?
无论服务器时间设置是否正确,我都使用这些代码行来找出印度古吉拉特邦的当地时间。但我注意到这不起作用。此行生成 SERVER TIME,但不生成 LOCAL TIME。如果服务器时间意外更改,则会导致问题。
在世界上任何国家/地区获得 LOCAL TIME 的确切解决方案是什么?
c# - LocalDate 来自 Week 和 WeekYear
使用 NodaTime 库,如何根据周数和周 WeekYear 计算一周第一天的 LocalDate。
反过来:
像这样的假代码:
c# - 相互转换日历 使用 NodaTime 库
我使用Noda Time来处理DateTime
问题,我阅读了几乎所有的文档,但是在将日历相互转换时遇到了一些问题,
首先,Noda 支持多少个日历?
如前所述
CalendarSystem
,只有 4 个日历:a)CopticCalendar / b)GregorianCalendar / c)IslamicCalendar / d)JulianCalendar
那么其他日历系统呢?
我使用波斯日历又名 Jalali 日历,那么有没有办法在 NodaTime 中使用这个日历?以及如何将其转换为公历?
我的最终目标是将时间(在特区)和日期都转换为 UTC 时区和格鲁吉亚日历。例如,时区和波斯历中的现在(
yyyy/MM/dd - HH:mm:ss
)Asia/Tehran
是:(1391/06/30 - 10:01:15),格鲁吉亚历和 UTC 中的现在是(2012/09/20 - 05:01:15),那又如何你的建议是?单独的时间根本不重要,但日期,我对此一无所知(在 NodaTime 中),有没有办法在一个过程或方法中转换这两者?
c# - noda-time 在这种情况下是否适用?
我从事的项目基本上是一个数据收集器。通过定位,将其视为具有应用程序层(OSI 第 7 层)的解析/分析功能的 Wireshark(或等效项)可能会有所帮助。当前版本是具有 15 年以上历史的遗留 MFC 应用程序。它仍然有效,但维护、稳定性和可扩展性是我们面临的真正问题。项目领导团队最近同意我们需要开始开发下一代产品,我们的目标是 .NET,因为该产品严格来说是基于 Windows 桌面的产品。
鉴于我们的用户经常分析在世界各地收集的日志文件,消息时间戳非常重要。当前产品用于_ftime_s()
分配时间戳,我曾假设我们将来会简单地用于System.DateTime.UtcNow
在 .NET 端获取时间戳。也就是说,直到我读到noda-time。现在,我认为我们的问题域需要更多关注与时间相关的功能,这比我之前考虑的要多。
所以有几个问题。
根据我上面提供的描述,将noda-time用于
NodaTime.Instant
时间戳是否有意义?如果可以选择,我更愿意为专门的支持付费,而不是因为害怕(偏执狂?)项目被放弃而使用开源项目。那些更倾向于接受开源哲学的人在这一点上有什么想法或指导吗?
noda-time目前处于第二个测试阶段。NodaTime 1.0.0 有目标日期吗?
nhibernate - How do I create an NHibernate IUserType for a Time in Sql Server 2008/2012?
I am trying to create an NHibernate IUserType
for the Noda Time LocalTime
type which would logically map to a time
type in Sql Server 2008/2012. I am able to get values saving and loading from the database. However, I can't write queries involving comparison of local times like _session.Query<SchedulingTemplate>().Where(x => x.Start < end && x.End >= start)
gives the error SqlException (0x80131904): The data types time and datetime are incompatible in the less than operator.
The relevant code from my user type is:
The problem is that despite the above code indicating the database type is a time, it generates the following query (per Sql Profiler):
exec sp_executesql N'select [...] from [SchedulingTemplate] scheduling0_ where scheduling0_.Start<@p0 and scheduling0_.[End]>=@p1',N'@p0 datetime,@p1 datetime',@p0='1753-01-01 20:00:00',@p1='1753-01-01 06:00:00'
(note I omitted the select list for brevity)
Notice that the type and value of the parameters is being treated as datetime
.
This appears to be very similar to two NH bugs that have been closed https://nhibernate.jira.com/browse/NH-2661 and https://nhibernate.jira.com/browse/NH-2660.
I tried to use NHibernateUtil.TimeAsTimeSpan
and that didn't seem to work either. It generated exactly the same query which surprised me. I am thinking maybe the issue described in NH-2661 also exists for user types and was not fixed for that?
I am using NHibernate v3.3.1.400 and Noda Time 1.0.0-beta2
json.net - Noda Time Instance 值未正确反序列化
我目前正在使用 RavenDB 来存储一个使用 Noda Time 的 Instant 类来存储日期的对象。
RavenDb 将值存储为
“到达时间”:{“滴答声”:13507658019037497 },
但是当查询对象时,它始终为空,并在 unix 纪元时间开始时开始。
我曾尝试使用 JsonConvert 属性,但读取器始终为 Instant 类型返回空值。此外,如果我使用多个属性,它只指第一个。
我应该在 RavenDb 中使用 noda 时间还是只使用常规日期时间?
谢谢