Dot-Net-Core

可以使用 Microsoft.Extensions.Configuration 綁定的 TimeSpan 的 Json 格式

  • May 3, 2018

在一個項目中,我需要通過 Micorosoft.Extensions.Configuration 配置一些第三方庫。

該庫提供了一個選項類,我使用 configurationSection.Bind(optionsClassInstance) 方法綁定值。

除了嵌套的 TimeSpan 值外,它執行良好。我無法弄清楚時間跨度的 json 結構是什麼,所以它可以被綁定。

沒有錯誤。json 中的值根本沒有綁定。

到目前為止,我只使用了 “timespan”: { “Days”: 0, “Hours”: 1, “Minutes”: 0 }


多虧了答案,我成功地測試了具有給定結果的給定值:

1.02:03:04.567 = 1 天 2 小時 3 分鐘 4 秒 567 毫秒

1.02:03:04 = 1 天 2 小時 3 分鐘 4 秒 0 毫秒

02:03:04 = 0 天 2 小時 3 分鐘 4 秒 0 毫秒

03:04 = 0 天 3 小時 4 分鐘 0 秒 0 毫秒

04 = 4 天 0 小時 0 分鐘 0 秒 0 毫秒

.net 核心中的時間跨度格式是D.HH:mm:nn(所以“1.02:03:04”是 1 天 2 小時 3 分鐘 4 秒)。

javascript 將無法讀取(出於這個原因,我們將自定義 JsonConverter 用於時間跨度對象),但 .Net 可以。

{"timespan":"1.02:03:04"}

引用自:https://stackoverflow.com/questions/50156326