gpt4 book ai didi

c# - 如何将 WCF 样式格式的日期字符串(即 "/Date(1342210377000)/")转换为 c# DateTime?

转载 作者:太空宇宙 更新时间:2023-11-03 13:58:15 24 4
gpt4 key购买 nike

ajax 请求发送 WCF 格式的日期值?它是一个转换为字符串的 javascript 日期对象,WCF 可以使用 DataContractSerializer 反序列化。

"/Date(1342210377000)/"

客户端曾经将此数据发送到 WCF 服务,但现在发送到 asp.net mvc Controller 。有谁知道如何在不执行大量 string.replace 操作的情况下将该字符串反序列化为 c# DateTime?是否有我可以利用的现有 .NET 序列化程序?我查看了使用 DataContractSerializer,但它的 readobject 方法采用流或 xmlreader。我不知道如何将 modelbindercontext.valueprovider 值转换为序列化程序可以使用的流对象。如果有人知道我如何正确转换该字符串,我很乐意学习如何操作。感谢您提供任何提示、技巧、代码、链接等...

最佳答案

您可以使用 DataContractJsonSerializer 将其转换为 DateTime 值:

var str = "\"/Date(1342210377000)/\"";
var dcjs = new DataContractJsonSerializer(typeof(DateTime));
var ms = new MemoryStream(Encoding.UTF8.GetBytes(str));
var dt = dcjs.ReadObject(ms);
Console.WriteLine(dt);

关于c# - 如何将 WCF 样式格式的日期字符串(即 "/Date(1342210377000)/")转换为 c# DateTime?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11478210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com