用于restful wcf的自定义JSON Serializer

时间:2015-11-11 14:53:16

标签: json web-services wcf rest serialization

我有一个安静的wcf,我的方法返回一个包含日期时间的对象。 但是当值为DateTime.MinVal

时它会失败

当CurrentTimeZone.GetUtcOffset为>时出现问题。 0因此,如果我将时区设置为柏林(+1:00)或更高,它将返回一个正数,这意味着tickcount将返回一个负数,因为value.Ticks == 0(minValue),导致异常。

serializer.WriteObject()抛出的异常是:

Message = “转换为UTC时,大于DateTime.MaxValue或小于DateTime.MinValue的DateTime值无法序列化为JSON。”

我的问题:是否可以使用其他\ custom JSON Serializer?

 <ServiceContract(Namespace:="XXX")> _
Public Interface IsvcAppUser
           <OperationContract()>
            <FaultContract(GetType(QFlowAPISecurityException))>
            <FaultContract(GetType(QFlowAPIApplicationException))>
            <WebInvoke(Method:="GET", ResponseFormat:=WebMessageFormat.Json, RequestFormat:=WebMessageFormat.Json, BodyStyle:=WebMessageBodyStyle.WrappedRequest)>
            Function GetMyResourceCalendars() As List(Of CalendarInfo)
End Interface

<DataContract()> _
    Public Class CalendarInfo
        Inherits ObjectBase

        Private _FirstVacancy As DateTime

        <DataMember()> _
        Public Property FirstVacancy() As DateTime
            Get
                Return _FirstVacancy
            End Get
            Set(ByVal value As DateTime)
                _FirstVacancy = value
            End Set
        End Property
    End Class

0 个答案:

没有答案