问题标签 [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.

0 投票
1 回答
341 浏览

xml - 配置 NServiceBus 以允许 XML 序列化消息中的 NodaTime 实体的最简单方法是什么?

我希望能够在一些 NServiceBus 消息中使用 NodaTime 实体,但是,内置的 xml 序列化不支持它们。作为端点配置的一部分,是否有直接的方法可以为特定类型添加我自己的序列化程序?

0 投票
1 回答
1869 浏览

c# - 如何获取当月的最后一天和下个月的最后一天

我正在尝试获取本月的最后一天和下个月的最后一天。

这是我到目前为止提出的代码,但我不得不在 NodaTime 代码和 .NET 方法 DateTime.DaysInMonth() 之间混合以实现我正在寻找的东西,这听起来不对。

您能否让我知道 NodaTime 推荐的获取当前和下个月最后一天的方法是什么?

提前致谢

0 投票
2 回答
609 浏览

json - NodaTime 间隔 JSON 序列化

NodaTime JSON.net 序列化程序不使用ISO8601 时间间隔格式来表示开始和结束时刻是否有原因?

ISO8601 时间间隔示例:

NodaTime 复杂 JSON:

ISO8601 格式是否不适合 NodaTime 中的间隔概念?

0 投票
2 回答
620 浏览

c# - 将同一时间转换为不同时区

我正在尝试将时间转换为不同的时区,但不是您的想法。例如,我需要将美国东部标准时间上午 9 点的日期时间转换为 UTC 时间上午 9 点。时区是可变的,因此仅添加/减去时间似乎不是使用 NodaTime 的正确方法

0 投票
1 回答
926 浏览

c# - NodaTime:从服务器到客户端

我正在使用 NodaTime 我以自纪元以​​来的 Ticks 形式存储时间信息。

但是,我想将自 unix 纪元以来的毫秒数传递回客户端浏览器,因此我可以构造一个 javascript Date() 对象。有没有办法做到这一点?

如果这种方法是不可能的,还有其他人有更好的主意吗?

ps 我厌倦了弄乱字符串,因为我总是想知道它们将如何被解释。

0 投票
1 回答
3170 浏览

c# - 将 NodaTime 转换为 Unix 时间戳以及 LocalDateTime 的重要性

我目前正在使用 NodaTime,因为我在处理 C#DateTime类中的时区时遇到了挫折。到目前为止,我真的很高兴。

我有三个具体问题。以上是我在解析 dateTime 字符串时使用的方法。我有一个format字符串,它允许我如何解析输入。我的问题是:


LocalDateTime(..)是什么重要吗?我使用的方法是 Matt Johnson 的 Stack示例,他的带有 date 2000, 1, 1, 0, 0。我觉得这很奇怪,因为我知道的大多数日期类都使用 Epoch time 1970, 1, 1, 0 ,0,所以我更改了方法以包含 Epoch 日期,但输出是相同的:

在此处输入图像描述


如何将时间转换为 Unix 时间戳?似乎没有内置方法可以这样做。


使用这种方法:

我正在用这种方法测试 NodaTime 的能力——具体来说,我想知道我是否可以解析在内部定义了偏移量的日期/时间,同时,我的timeZone输入还允许输入时区/偏移量。有趣的是,我的输入timeZone被忽略了,所以我的输出中的偏移量nodaTimeTest6是输入日期字符串:

在此处输入图像描述

这是期望的行为吗?

0 投票
2 回答
1309 浏览

c# - 使用 NodaTime 解析输入和输出不同的 dateTime 格式

我目前正在使用 NodaTime 来解析日期和输出日期

例如,输入是这样的:2014-03-11T02:00:00-07:00

如果我的return陈述如下:return result.Value.ToString(),那么输出将如下所示:2014-03-11T02:00:00-07

我了解 NodaTime 属性的使用(这是一个救生员),但是,我对这样的输出感兴趣:

yyyy-MM-dd HH:mm:ss

yyyyMMdd HH:mm:ss

dd/MM/yyyy hh:mm

所以我试图将我的return陈述改为:

return result.Value.Month + "/" + result.Value.Day + "/" + result.Value.Year + " " + result.Value.Hour + ":" + result.Value.Minute;

该格式的最终​​输出是:3/11/2014 2:0

无论如何都要制作输出,所以它是一种固定格式,例如03/11/2014 02:00

我知道如果我输入一个01作为我的月份,输出将1/11/2014不是01/11/2014

0 投票
0 回答
832 浏览

sqlite - ServiceStack OrmLite 中的 DATE/DATETIME 列类型属性

在 ServiceStack OrmLite 中,是否存在与属性等效的[StringLength(xx)]属性来指定属性应映射到 aDATEDATETIME类型的(SQLite)数据库列?

我正在使用优秀的NodaTime类型并使用自定义序列化(以 ISO 格式)将它们存储在数据库中,但是它们的存储方式不如VARCHAR(8000)BCLDateTime类型。

0 投票
0 回答
1276 浏览

c# - 无法加载文件或程序集 'NodaTime, Version=1.2.0.0, Culture=neutral, PublicKeyToken=4226afe0d9b296d1' 或其依赖项之一。”

目前我正在创建 Grasshopper 3D 插件。我最初使用 C#DateTime库来满足我的时区需求,但发现NodaTime它的可扩展性和方便性。立刻坠入爱河。

在创建Grasshopper 3D 组件时,我通过以下方式引用了我的程序集:

在此处输入图像描述

在 Visual Studio 中用 C# 编写的 Grasshopper 3D 组件编译为类库(因此没有控制台输出)。因此,对于我的初步开发,我通过控制台应用程序测试了 NodaTime。相同的配置,我使用相同的方法、相同的程序集、相同的引用添加——控制台应用程序工作得很好。但是,一旦我在 Grasshopper 组件中使用了该方法,就会出现以下错误:

在此处输入图像描述

我个人尝试过的事情:

  1. 重新打开了我的 Visual Studio 和项目。

  2. 删除引用和using语句,然后再次添加。

  3. 将 [所有三个] 可移植 .DLL 复制到我的/bin/目录

  4. 将 [所有三个] 可移植 .DLL 复制到我的/Libaries/目录。该/Libraries/目录是 Grasshopper 3D 组件 DLL 所在的位置(加载到 Grasshopper 中使用)。

  5. 将 NodaTime 文件夹的 [所有程序集] 复制到我的/Libraries/目录中。

  6. 将 CopyLocal 设置NodaTime为 true。并为假。

  7. 删除 .PDB

  8. 由另一位用户建议,通过 NuGet 维护我的依赖项。

我确实阅读了大部分(如果不是全部could not load file or assemblyStack Overflow 线程,并且Grasshopper论坛 查看了 解决方案。

可能是什么问题?

0 投票
2 回答
460 浏览

c# - 在编译时使用第三方 .DLL

我已经在整个网站上查找了这个问题,比如这个链接

我目前正在使用它NodaTime.dll来满足我的DateTime需求,并且我有兴趣继续使用它。但是,如果我向其分发我的应用程序的用户NodaTime.dll在他们的 GAC 或 /Libraries/ 文件夹中都没有,我的应用程序将无法运行(没有必要的依赖项)。我正在考虑NodaTime.dll使用我的应用程序进行分发,但在我的用户端似乎不够轻松和/或直观。

我在想,也许如果有办法,在编译时,我可以使用.dll,并且我的应用程序可以NodaTime.dll在自身内部引用。

到目前为止,我还通过将 NodaTime.dll 添加为现有文件来编译我的应用程序,但这样做并没有按预期工作——我的应用程序仍然引用NodaTime.dll/Libraries/文件夹中的 。

在此处输入图像描述