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/