В том же ключе, что и при возврате XML, если вы возвращаетесь в код JavaScript, вы можете рассмотреть возможность возврата вашего сложного типа, сериализованного в JSON.
Вот метод расширения, который делает это действительно простым ...
<Extension()> Public Function ToJSON(Of T As Class)(ByVal target As T) As String
Dim serializer = New System.Runtime.Serialization.Json.DataContractJsonSerializer(GetType(T))
Using ms As MemoryStream = New MemoryStream()
serializer.WriteObject(ms, target)
ms.Flush()
Dim bytes As Byte() = ms.GetBuffer()
Dim json As String = Encoding.UTF8.GetString(bytes, 0, bytes.Length).Trim(Chr(0))
Return json
End Using
End Function
Тогда в вашей службе передачи данных вы можете просто позвонить
Return MyObject.ToJSON