Test

<back to all web services

EchoCollections

The following routes are available for this service:
All Verbs/echo/collections
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class EchoCollections implements IConvertible
{
    List<String>? stringList;
    List<String>? stringArray;
    Map<String,String?>? stringMap;
    Map<int,String?>? intStringMap;

    EchoCollections({this.stringList,this.stringArray,this.stringMap,this.intStringMap});
    EchoCollections.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        stringList = JsonConverters.fromJson(json['stringList'],'List<String>',context!);
        stringArray = JsonConverters.fromJson(json['stringArray'],'List<String>',context!);
        stringMap = JsonConverters.toStringMap(json['stringMap']);
        intStringMap = JsonConverters.fromJson(json['intStringMap'],'Map<int,String?>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'stringList': JsonConverters.toJson(stringList,'List<String>',context!),
        'stringArray': JsonConverters.toJson(stringArray,'List<String>',context!),
        'stringMap': stringMap,
        'intStringMap': JsonConverters.toJson(intStringMap,'Map<int,String?>',context!)
    };

    getTypeName() => "EchoCollections";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'test.servicestack.net', types: <String, TypeInfo> {
    'EchoCollections': TypeInfo(TypeOf.Class, create:() => EchoCollections()),
    'Map<int,String?>': TypeInfo(TypeOf.Class, create:() => Map<int,String?>()),
});

Dart EchoCollections 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 /echo/collections HTTP/1.1 
Host: test.servicestack.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<EchoCollections xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Test.ServiceInterface">
  <IntStringMap xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfintstring>
      <d2p1:Key>0</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfintstring>
  </IntStringMap>
  <StringArray xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>String</d2p1:string>
  </StringArray>
  <StringList xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>String</d2p1:string>
  </StringList>
  <StringMap xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringstring>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfstringstring>
  </StringMap>
</EchoCollections>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<EchoCollections xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Test.ServiceInterface">
  <IntStringMap xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfintstring>
      <d2p1:Key>0</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfintstring>
  </IntStringMap>
  <StringArray xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>String</d2p1:string>
  </StringArray>
  <StringList xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>String</d2p1:string>
  </StringList>
  <StringMap xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringstring>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfstringstring>
  </StringMap>
</EchoCollections>