ServiceStack IReturn

Tom*_*Tom 11 .net c# servicestack

我正在看两周前出现的新api.这好像是

ReqDTO : IReturn<List<ResDTO>> { //... }
Run Code Online (Sandbox Code Playgroud)

"IReturn"位似乎是可选的?RazorRockstars演示项目中的DTO在没有它的情况下工作.

myt*_*thz 17

这是ServiceStack的新API中的一个新增功能,它允许您记录请求DTO将返回的预期响应类型,例如

ReqDTO : IReturn<List<ResDTO>> { ... }
Run Code Online (Sandbox Code Playgroud)

这使您可以使用任何C#服务客户端进行呼叫:

List<ResDTO> response = client.Get(new ReqDto());
Run Code Online (Sandbox Code Playgroud)

如果您没有IReturn标记,则客户端调用必须如下所示:

List<ResDTO> response = client.Get<List<ResDTO>>(new ReqDto());
Run Code Online (Sandbox Code Playgroud)

这是您的服务的客户/消费者需要了解的内容.如果您在DTO上有标记,则响应类型已知.

IReturn<>标记还用于确定ServiceStack /metadata页面中HTTP响应中使用的响应DTO .