Dapper でのマルチマッピング
Dapper でマルチマッピングを使用する場合、データベース クエリの結果を複数のオブジェクトまたはオブジェクト タイプにマッピングすることを目的とします。
の正しい使い方マルチマッピング
Dapper でマルチマッピングを適切に利用するには:
コードでは、「splitOn」の完全な列リストを指定する必要がありました。これは、単一のオブジェクトを複数のオブジェクトにマップしようとしたためです。マルチマッピングは、それぞれの個別のオブジェクト タイプが結果セット内の異なる列で始まることを前提としています。
分割ポイント
「splitOn」パラメータは、マッピングが行われる分割ポイントを定義します。 1 つのオブジェクトが終了し、次のオブジェクトのマッピングが始まります。デフォルトでは、これはオブジェクトの "Id" プロパティに設定されます。
たとえば、次の表では:
ProductID | ProductName | AccountOpened | CustomerId | CustomerName --------------------------------------- -------------------------
"CustomerId" のデフォルトの "splitOn" 値は次のようになります。 「ProductItem」オブジェクトのマッピングが「CustomerId」で終わり、「Customer」オブジェクトのマッピングが「CustomerId」で始まることを示します。 "CustomerId."
必然
結果セット内の列の順序は、予期されるマッピングと一致している必要があることに注意することが重要です。テーブル内で「CustomerId」と「CustomerName」の順序が逆になっている場合は、「splitOn」パラメータを調整して補正する必要があります。調整しないと null 値が返されます。
以上がDapper のマルチマッピングはデータベース クエリ結果を複数のオブジェクトに分割する方法を教えてください。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。