【问题标题】:How to change the serializer of WebMethod parameters如何更改 WebMethod 参数的序列化程序
【发布时间】:2015-03-04 09:40:54
【问题描述】:

我在我们的一些旧网页代码中发现了一个问题。问题是默认序列化程序没有正确序列化日期。我想使用 JSON.Net 在我们的 aspx 代码中序列化 web 方法的参数。但我不确定如何告诉它使用 JSON.NET 而不是使用默认的序列化程序。

这是我们的代码示例片段

<System.Web.Services.WebMethod()> _
    <System.Web.Script.Services.ScriptMethod()> _
    Public Shared Function EditApplication(ByVal Application As ApplicationModel, ByVal Country As String, ByVal Language As String) As jsonResponse
        Dim r As New jsonResponse
        Dim g As New ApplicationRequest
        g.country = Country
        g.locale = Language
        g.platform = "Android"
        g.timestamp = ""
        g.transactionid = "abc123"
        ....

所以我需要 ApplicationModel 来使用 JSON.Net 进行序列化。感谢您的帮助。

【问题讨论】:

    标签: asp.net json vb.net serialization json.net


    【解决方案1】:

    不确定这是否有用(因为这是从 REST Web 服务获取的),但您可以在 OperationContract 上定义它,如下所示: System.ServiceModel.Web.WebMessageFormat.Json

    <OperationContract()> _
    <WebGet(responseformat:=System.ServiceModel.Web.WebMessageFormat.Json)> _
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-15
      • 1970-01-01
      • 2014-09-30
      • 1970-01-01
      • 2016-11-05
      • 1970-01-01
      • 1970-01-01
      • 2020-05-28
      相关资源
      最近更新 更多