如何将时间跨度从 Javascript 发送到 WebAPI

K. *_* L. 6 asp.net-web-api momentjs

我有两个时刻日期,并且正在通过两者之间的差异来计算持续时间。

如何将持续时间发布到 WebAPI 控制器,以便它自动反序列化为 C# TimeSpan?当我发布“P2DT00H”时,它会正确地反序列化为 TimeSpan,但如何从片刻持续时间内获取该格式?

pec*_*eco 5

计算此答案中所述的持续时间获取两个日期时间之间的时间差

像这样定义一个端点:

    public IHttpActionResult Post([FromBody] TimeSpan ts)
    {
        // do stuff
        return Ok(ts);
    }
Run Code Online (Sandbox Code Playgroud)

并像这样发布持续时间:

POST http://localhost/theendpoint HTTP/1.1
Content-Length: 12
Content-Type: application/json
Host: localhost

"00:01:10"
Run Code Online (Sandbox Code Playgroud)

并且 web api 将反序列化它并将其正确绑定到模型。