ServiceStack 請求DTO 設計
WCF 和WebAPI 等Web 服務框架鼓勵將API 呼叫視為普通的C# 呼叫,並具有特定的簽名每個請求。相較之下,ServiceStack 採用基於訊息的方法,其中整個查詢都在請求訊息中捕獲。這具有以下優點:
重建GetBooking 限制服務
應用這些對於您的GetBookingLimit 和 GetBookingLimits 服務的概念,請考慮以下事項:
重構程式碼:
[Route("/bookinglimits/{Id}")] public class GetBookingLimit : IReturn<BookingLimit> { public int Id { get; set; } } [Route("/bookinglimits/search")] public class FindBookingLimits : IReturn<List<BookingLimit>> { public DateTime BookedAfter { get; set; } } [Authenticate] public class BookingLimitService : AppServiceBase { public BookingLimit Get(GetBookingLimit request) { return new BookingLimit {...}; } public List<BookingLimit> Get(FindBookingLimits request) { return new List<BookingLimit> {...}; } }
錯誤處理與驗證
以上是ServiceStack 基於訊息的方法如何改進請求 DTO 設計?的詳細內容。更多資訊請關注PHP中文網其他相關文章!