Tôi đang xem api mới xuất hiện cách đây 2 tuần. Có vẻ nhưServiceStack IReturn
ReqDTO : IReturn<List<ResDTO>> { //... }
Bit "IReturn" có vẻ là tùy chọn? Các DTO trong dự án demo RazorRockstars hoạt động mà không có nó.
Tôi đang xem api mới xuất hiện cách đây 2 tuần. Có vẻ nhưServiceStack IReturn
ReqDTO : IReturn<List<ResDTO>> { //... }
Bit "IReturn" có vẻ là tùy chọn? Các DTO trong dự án demo RazorRockstars hoạt động mà không có nó.
Đây là bổ sung mới trong ServiceStack's New API cho phép bạn ghi lại Loại phản hồi dự kiến mà Yêu cầu DTO sẽ trả về, ví dụ: với
ReqDTO : IReturn<List<ResDTO>> { ... }
Cho phép bạn gọi sử dụng bất kỳ khách hàng C# Dịch vụ với:
List<ResDTO> response = client.Get(new ReqDto());
Nếu bạn không có IReturn Marker cuộc gọi khách hàng của bạn sẽ phải trông giống như:
List<ResDTO> response = client.Get<List<ResDTO>>(new ReqDto());
Điều gì đó mà khách hàng/người tiêu dùng dịch vụ của bạn cần biết. Nếu bạn có điểm đánh dấu trên DTO thì kiểu phản hồi đã được biết.
Điểm đánh dấu IReturn<>
cũng được sử dụng để xác định Phản hồi DTO được sử dụng trong Phản hồi HTTP trong trang /metadata
của ServiceStack.
Theo như tôi biết, đây chỉ là một cách thuận tiện để xác định yêu cầu/phản hồi DTO của bạn. Bạn có thể sử dụng nó miễn phí hay không.
Trong trường hợp bạn xác định DTO của mình trong thư viện lớp di động, bạn sẽ không thể sử dụng IReturn. Có lẽ IReturn nên được định nghĩa trong PCL trong ServiceStack. Chỉ là một ý nghĩ.
Sử dụng ServiceStack 3.9.x và tôi chỉ tự hỏi liệu «IReturn' có được thi hành không? tức là nếu điểm cuối của tôi trả về dữ liệu không khớp với loại được chỉ định, nó có nên ném ngoại lệ không? – JaKXz