export class HelloBase<T>
{
public items: T[] = [];
public counts: number[] = [];
public constructor(init?: Partial<HelloBase<T>>) { (Object as any).assign(this, init); }
}
export class Poco
{
public name: string;
public constructor(init?: Partial<Poco>) { (Object as any).assign(this, init); }
}
export class HelloWithGenericInheritance extends HelloBase<Poco>
{
public result: string;
public constructor(init?: Partial<HelloWithGenericInheritance>) { super(init); (Object as any).assign(this, init); }
}
TypeScript HelloWithGenericInheritance 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/oneway/HelloWithGenericInheritance HTTP/1.1
Host: test.servicestack.net
Accept: application/json
Content-Type: application/json
Content-Length: length
{"result":"String","items":[{"name":"String"}],"counts":[0]}