Test

<back to all web services

HelloWithEnumMap

"use strict";
/** @typedef {'Value1'|'Value2'|'Value3'} */
export var EnumType;
(function (EnumType) {
    EnumType["Value1"] = "Value1"
    EnumType["Value2"] = "Value2"
    EnumType["Value3"] = "Value3"
})(EnumType || (EnumType = {}));
/** @typedef {'None'|'Member 1'|'Value2'} */
export var EnumWithValues;
(function (EnumWithValues) {
    EnumWithValues["None"] = "None"
    EnumWithValues["Value1"] = "Member 1"
    EnumWithValues["Value2"] = "Value2"
})(EnumWithValues || (EnumWithValues = {}));
/** @typedef {number} */
export var EnumFlags;
(function (EnumFlags) {
    EnumFlags[EnumFlags["Value0"] = 0] = "Value0"
    EnumFlags[EnumFlags["Value1"] = 1] = "Value1"
    EnumFlags[EnumFlags["Value2"] = 2] = "Value2"
    EnumFlags[EnumFlags["Value3"] = 4] = "Value3"
    EnumFlags[EnumFlags["Value123"] = 7] = "Value123"
})(EnumFlags || (EnumFlags = {}));
/** @typedef {'lower'|'UPPER'|'PascalCase'|'camelCase'|'camelUPPER'|'PascalUPPER'} */
export var EnumStyle;
(function (EnumStyle) {
    EnumStyle["lower"] = "lower"
    EnumStyle["UPPER"] = "UPPER"
    EnumStyle["PascalCase"] = "PascalCase"
    EnumStyle["camelCase"] = "camelCase"
    EnumStyle["camelUPPER"] = "camelUPPER"
    EnumStyle["PascalUPPER"] = "PascalUPPER"
})(EnumStyle || (EnumStyle = {}));
export class HelloWithEnumMap {
    /** @param {{enumProp?:{ [index: string]: EnumType; },enumWithValues?:{ [index: string]: EnumWithValues; },nullableEnumProp?:{ [index: string]: EnumType; },enumFlags?:{ [index: string]: EnumFlags; },enumStyle?:{ [index: string]: EnumStyle; }}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {{ [index: string]: EnumType; }} */
    enumProp;
    /** @type {{ [index: string]: EnumWithValues; }} */
    enumWithValues;
    /** @type {{ [index: string]: EnumType; }} */
    nullableEnumProp;
    /** @type {{ [index: string]: EnumFlags; }} */
    enumFlags;
    /** @type {{ [index: string]: EnumStyle; }} */
    enumStyle;
}

JavaScript HelloWithEnumMap DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /xml/oneway/HelloWithEnumMap HTTP/1.1 
Host: test.servicestack.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<HelloWithEnumMap xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Test.ServiceModel">
  <EnumFlags xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfEnumFlagsEnumFlagsIKzD6DHq>
      <d2p1:Key>Value0</d2p1:Key>
      <d2p1:Value>Value0</d2p1:Value>
    </d2p1:KeyValueOfEnumFlagsEnumFlagsIKzD6DHq>
  </EnumFlags>
  <EnumProp xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfEnumTypeEnumTypeIKzD6DHq>
      <d2p1:Key>Value1</d2p1:Key>
      <d2p1:Value>Value1</d2p1:Value>
    </d2p1:KeyValueOfEnumTypeEnumTypeIKzD6DHq>
  </EnumProp>
  <EnumStyle xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfEnumStyleEnumStyleIKzD6DHq>
      <d2p1:Key>lower</d2p1:Key>
      <d2p1:Value>lower</d2p1:Value>
    </d2p1:KeyValueOfEnumStyleEnumStyleIKzD6DHq>
  </EnumStyle>
  <EnumWithValues xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfEnumWithValuesEnumWithValuesIKzD6DHq>
      <d2p1:Key>None</d2p1:Key>
      <d2p1:Value>None</d2p1:Value>
    </d2p1:KeyValueOfEnumWithValuesEnumWithValuesIKzD6DHq>
  </EnumWithValues>
  <NullableEnumProp xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfNullableOfEnumTypep_S_PBaRK1NullableOfEnumTypep_S_PBaRK1_ShTDFhl_P>
      <d2p1:Key>Value1</d2p1:Key>
      <d2p1:Value>Value1</d2p1:Value>
    </d2p1:KeyValueOfNullableOfEnumTypep_S_PBaRK1NullableOfEnumTypep_S_PBaRK1_ShTDFhl_P>
  </NullableEnumProp>
</HelloWithEnumMap>