Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Test.ServiceModel
Namespace Global
Namespace Test.ServiceModel
<DataContract>
Public Partial Class HelloWithDataContract
<DataMember(Name:="name", Order:=1, IsRequired:=true, EmitDefaultValue:=false)>
Public Overridable Property Name As String
<DataMember(Name:="id", Order:=2, EmitDefaultValue:=false)>
Public Overridable Property Id As Integer
End Class
<DataContract>
Public Partial Class HelloWithDataContractResponse
<DataMember(Name:="result", Order:=1, IsRequired:=true, EmitDefaultValue:=false)>
Public Overridable Property Result As String
End Class
End Namespace
End Namespace
VB.NET HelloWithDataContract DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /json/reply/HelloWithDataContract HTTP/1.1
Host: test.servicestack.net
Accept: application/json
Content-Type: application/json
Content-Length: length
{"name":"String"}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"result":"String"}