| All Verbs | /customers/{Id} |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Northwind.ServiceModel;
using Northwind.ServiceModel.Types;
namespace Northwind.ServiceModel
{
[DataContract]
public partial class CustomerDetailsResponse
{
[DataMember]
public virtual Customer Customer { get; set; }
[DataMember]
public virtual List<CustomerOrder> Orders { get; set; } = [];
[DataMember]
public virtual ResponseStatus ResponseStatus { get; set; }
}
public partial class GetCustomerDetails
: IGet
{
public virtual string Id { get; set; }
}
}
namespace Northwind.ServiceModel.Types
{
[DataContract]
public partial class Customer
{
[DataMember]
public virtual string Id { get; set; }
[DataMember]
public virtual string CompanyName { get; set; }
[DataMember]
public virtual string ContactName { get; set; }
[DataMember]
public virtual string ContactTitle { get; set; }
[DataMember]
public virtual string Address { get; set; }
[DataMember]
public virtual string City { get; set; }
[DataMember]
public virtual string Region { get; set; }
[DataMember]
public virtual string PostalCode { get; set; }
[DataMember]
public virtual string Country { get; set; }
[DataMember]
public virtual string Phone { get; set; }
[DataMember]
public virtual string Fax { get; set; }
}
[DataContract]
public partial class CustomerOrder
{
[DataMember]
public virtual Order Order { get; set; }
[DataMember]
public virtual List<OrderDetail> OrderDetails { get; set; } = [];
}
[DataContract]
public partial class Order
{
[DataMember]
public virtual int Id { get; set; }
[DataMember]
public virtual string CustomerId { get; set; }
[DataMember]
public virtual int EmployeeId { get; set; }
[DataMember]
public virtual DateTime? OrderDate { get; set; }
[DataMember]
public virtual DateTime? RequiredDate { get; set; }
[DataMember]
public virtual DateTime? ShippedDate { get; set; }
[DataMember]
public virtual int? ShipVia { get; set; }
[DataMember]
public virtual decimal Freight { get; set; }
[DataMember]
public virtual string ShipName { get; set; }
[DataMember]
public virtual string ShipAddress { get; set; }
[DataMember]
public virtual string ShipCity { get; set; }
[DataMember]
public virtual string ShipRegion { get; set; }
[DataMember]
public virtual string ShipPostalCode { get; set; }
[DataMember]
public virtual string ShipCountry { get; set; }
}
[DataContract]
public partial class OrderDetail
{
[DataMember]
public virtual int OrderId { get; set; }
[DataMember]
public virtual int ProductId { get; set; }
[DataMember]
public virtual decimal UnitPrice { get; set; }
[DataMember]
public virtual short Quantity { get; set; }
[DataMember]
public virtual double Discount { get; set; }
}
}
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>