簡體   English   中英

.NET 存儲庫模式和 Http 請求

[英].NET Repository Pattern and Http Requests

我試圖 100% 了解 .NET 世界中的架構模式。 據我所知,Repository Pattern 的 Repository 主要代碼通常是在基礎設施層創建的,用於數據訪問,不僅是對數據庫,還包括其他情況。 直到今天,我只看到它被用於訪問數據庫,但如果可能的話,我想看看使用 Repository 類時的多個其他示例。

例如,現在我正在構建一個向多個其他 API 發送 Http 請求的應用程序。 我有一個域/核心層和一個基礎設施層。 在這種情況下,Http Requests 類的最佳實踐是什么? 是否應該有 HttpRequests 通信類的存儲庫? 或者在這種情況下是否有另一種模式可以遵循?

如果可能的話,有人可以就這個主題提供一些更詳細的材料,我將不勝感激。 我已經搜索了很多,我能找到的總是相同的數據庫,只有相關的存儲庫訪問。

不確定這種用例的最佳實踐是什么,但最近我構建了類似的東西。 所以基本上我在基礎設施項目中有一個名為 externalRepositories 的文件夾,其中主要包含三件事(每個主機):

SomeHostHttpClient - 可能不一定在您的情況下,但我使用它進行身份驗證,在 401/403 的情況下重試並記錄請求/響應

SomeHostExternalRepository - 處理主機的 api 請求,檢查響應並反序列化對象。

SomeHostMappingService - 用於從響應 dto 映射到實體,並附加請求到 db 以獲取引用等。 可能這應該在外部存儲庫中,因為私有 merhods 和 repo 應該返回實體,我只是想通過它們的職責將這兩者分開。 但現在它引入了一些混淆和額外的實現知識

並不是說這是正確的解決方案,只是分享我在這個主題中的經驗。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM