【问题标题】:Send DateTime from ASP.NET to angularjs as struct, not a string将 DateTime 从 ASP.NET 发送到 angularjs 作为结构,而不是字符串
【发布时间】:2021-10-13 01:38:20
【问题描述】:

我遇到了一个问题,我将一个复杂的对象从 ASP.NET 后端发送到 AngularJS 前端。此对象由 DateTime 属性和还包含 DateTime 属性的对象列表组成。所有这些属性都作为字符串发送到前端,我需要手动处理(转换为 Date 对象)它们。问题是多个不同的对象以这种方式从后端发送,所以人们永远不知道哪个属性是 DateTime 哪个不是,这必然导致运行“图形”(=对象的所有属性和“子属性”),检查如果当前属性类似于 DateTime 并将字符串转换为 Date。

所有这些广度优先的图形处理都需要大量的处理器时间,而这些时间应该用于处理 DateTimes 和发送的大量数据,例如10 秒。所以我需要知道是否有任何自动方式将 DateTime 结构作为结构而不是字符串发送到前端,或者以某种方式自动处理它们。

提前感谢您的任何建议。

【问题讨论】:

  • 答案可能取决于用于传输数据的编码!我会假设您使用的是 JSON,它只有少数可以使用的有限类型 - 数组、对象、字符串、数字和布尔值(认为这就是全部!)

标签: asp.net angularjs datetime


【解决方案1】:

这取决于您用于将数据从 BE 发送到 FE 的协议。如果您像我们大多数人一样使用 JSON,那么您仅限于 these 字段值类型,不支持 date 类型,因此对您的问题的回答将是 NO,您的数据将以格式正确的字符串、时间戳编号或对象结构的形式返回给 FE,将日期字段表示为 json。

如果你坚持使用 JSON,你可以考虑优化自己的日期对话机制。例如,如果您使用正则表达式,也许值得将它们替换为不那么干净但运行速度更快的东西。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-30
    • 2020-06-02
    • 1970-01-01
    • 2016-11-21
    • 1970-01-01
    • 1970-01-01
    • 2014-07-25
    • 2017-07-16
    相关资源
    最近更新 更多