在 Dapper 中正確使用多重映射
Dapper 的多重映射功能允許從單一查詢中檢索多種類型。在提供的範例中,目標是傳回產品及其關聯客戶的清單。
範例 Dapper 程式碼定義了兩個類別:ProductItem 和 Customer。查詢成功傳回產品及其客戶,但「splitOn」參數必須包含完整的客戶列清單才能檢索所有客戶屬性。
誤解在於「splitOn」參數的解釋。它指定應將列拆分為多個物件的點。預設情況下,它在 Id 屬性處拆分。但是,在這種情況下,客戶屬性從「CustomerId」欄位開始。
要修正此問題,應將「splitOn」參數修改為:
splitOn: "CustomerId"
這將導致在正確的映射中,每個ProductItem 實例的「Customer」屬性將包含關聯的客戶數據。
需要注意的是,底層表至關重要。如果客戶列的順序發生更改,則需要相應調整「splitOn」參數以保持準確的對應。
以上是如何正確使用 Dapper 的多重映射與多個客戶列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!