我在c#中休息ws。 有了这个ws,我可以把毫秒的日期时间。这是我的要求的一个例子:如何设置精度毫秒在C#
{ "sensorId": 656,
"value": "128",
"timestamp": "2016-06-01 11:20:50.125",
"values":
[{"value":"2064","timestamp":"2016-06-09 13:23:50.100"}]
}
正如你可以看到有两个日期与毫秒。第一次约会,以.125毫秒结束。
在我的代码中,我使用此代码反序列化字段日期。
public class SensorDateTimeConverter : DateTimeConverterBase//IsoDateTimeConverter
{
private const string Format = "yyyy-MM-dd HH:mm:ss.fff";
public override void WriteJson(JsonWriter writer,
object value,
JsonSerializer serializer)
{
writer.WriteValue(((DateTime)value).ToString(Format));
writer.Flush();
}
public override object ReadJson(JsonReader reader,
Type objectType,
object existingValue,
JsonSerializer serializer)
{
if (reader.Value == null)
{
return null;
}
var s = reader.Value.ToString();
DateTime result;
if (DateTime.TryParseExact(s,
Format,
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out result))
{
return result;
}
return DateTime.Now;
}
}
如果我试图检查方法ReadJson的数据是正确的解析和毫秒是“125”。
如果我尝试保存数据库的这个值,我会看到相同的日期,但是.127毫秒。
为什么?
是在JSon转换后的日期是正确的。我用日期时间使用SQL Server – bircastri