| All Verbs | /customers/{Id} |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Northwind.ServiceModel
Imports Northwind.ServiceModel.Types
Namespace Global
Namespace Northwind.ServiceModel
<DataContract>
Public Partial Class CustomerDetailsResponse
<DataMember>
Public Overridable Property Customer As Customer
<DataMember>
Public Overridable Property Orders As List(Of CustomerOrder) = New List(Of CustomerOrder)
<DataMember>
Public Overridable Property ResponseStatus As ResponseStatus
End Class
Public Partial Class GetCustomerDetails
Implements IGet
Public Overridable Property Id As String
End Class
End Namespace
Namespace Northwind.ServiceModel.Types
<DataContract>
Public Partial Class Customer
<DataMember>
Public Overridable Property Id As String
<DataMember>
Public Overridable Property CompanyName As String
<DataMember>
Public Overridable Property ContactName As String
<DataMember>
Public Overridable Property ContactTitle As String
<DataMember>
Public Overridable Property Address As String
<DataMember>
Public Overridable Property City As String
<DataMember>
Public Overridable Property Region As String
<DataMember>
Public Overridable Property PostalCode As String
<DataMember>
Public Overridable Property Country As String
<DataMember>
Public Overridable Property Phone As String
<DataMember>
Public Overridable Property Fax As String
End Class
<DataContract>
Public Partial Class CustomerOrder
<DataMember>
Public Overridable Property Order As Order
<DataMember>
Public Overridable Property OrderDetails As List(Of OrderDetail) = New List(Of OrderDetail)
End Class
<DataContract>
Public Partial Class Order
<DataMember>
Public Overridable Property Id As Integer
<DataMember>
Public Overridable Property CustomerId As String
<DataMember>
Public Overridable Property EmployeeId As Integer
<DataMember>
Public Overridable Property OrderDate As Date?
<DataMember>
Public Overridable Property RequiredDate As Date?
<DataMember>
Public Overridable Property ShippedDate As Date?
<DataMember>
Public Overridable Property ShipVia As Integer?
<DataMember>
Public Overridable Property Freight As Decimal
<DataMember>
Public Overridable Property ShipName As String
<DataMember>
Public Overridable Property ShipAddress As String
<DataMember>
Public Overridable Property ShipCity As String
<DataMember>
Public Overridable Property ShipRegion As String
<DataMember>
Public Overridable Property ShipPostalCode As String
<DataMember>
Public Overridable Property ShipCountry As String
End Class
<DataContract>
Public Partial Class OrderDetail
<DataMember>
Public Overridable Property OrderId As Integer
<DataMember>
Public Overridable Property ProductId As Integer
<DataMember>
Public Overridable Property UnitPrice As Decimal
<DataMember>
Public Overridable Property Quantity As Short
<DataMember>
Public Overridable Property Discount As Double
End Class
End Namespace
End Namespace
VB.NET GetCustomerDetails DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /customers/{Id} HTTP/1.1
Host: northwind.netcore.io
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<GetCustomerDetails xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Northwind.ServiceModel">
<Id>String</Id>
</GetCustomerDetails>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<CustomerDetailsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Northwind.ServiceModel">
<Customer xmlns:d2p1="http://schemas.datacontract.org/2004/07/Northwind.ServiceModel.Types">
<d2p1:Address>String</d2p1:Address>
<d2p1:City>String</d2p1:City>
<d2p1:CompanyName>String</d2p1:CompanyName>
<d2p1:ContactName>String</d2p1:ContactName>
<d2p1:ContactTitle>String</d2p1:ContactTitle>
<d2p1:Country>String</d2p1:Country>
<d2p1:Fax>String</d2p1:Fax>
<d2p1:Id>String</d2p1:Id>
<d2p1:Phone>String</d2p1:Phone>
<d2p1:PostalCode>String</d2p1:PostalCode>
<d2p1:Region>String</d2p1:Region>
</Customer>
<Orders xmlns:d2p1="http://schemas.datacontract.org/2004/07/Northwind.ServiceModel.Types">
<d2p1:CustomerOrder>
<d2p1:Order>
<d2p1:CustomerId>String</d2p1:CustomerId>
<d2p1:EmployeeId>0</d2p1:EmployeeId>
<d2p1:Freight>0</d2p1:Freight>
<d2p1:Id>0</d2p1:Id>
<d2p1:OrderDate>0001-01-01T00:00:00</d2p1:OrderDate>
<d2p1:RequiredDate>0001-01-01T00:00:00</d2p1:RequiredDate>
<d2p1:ShipAddress>String</d2p1:ShipAddress>
<d2p1:ShipCity>String</d2p1:ShipCity>
<d2p1:ShipCountry>String</d2p1:ShipCountry>
<d2p1:ShipName>String</d2p1:ShipName>
<d2p1:ShipPostalCode>String</d2p1:ShipPostalCode>
<d2p1:ShipRegion>String</d2p1:ShipRegion>
<d2p1:ShipVia>0</d2p1:ShipVia>
<d2p1:ShippedDate>0001-01-01T00:00:00</d2p1:ShippedDate>
</d2p1:Order>
<d2p1:OrderDetails>
<d2p1:OrderDetail>
<d2p1:Discount>0</d2p1:Discount>
<d2p1:OrderId>0</d2p1:OrderId>
<d2p1:ProductId>0</d2p1:ProductId>
<d2p1:Quantity>0</d2p1:Quantity>
<d2p1:UnitPrice>0</d2p1:UnitPrice>
</d2p1:OrderDetail>
</d2p1:OrderDetails>
</d2p1:CustomerOrder>
</Orders>
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
</CustomerDetailsResponse>