次の方法でプロファイルの詳細を取得しています。
var profiles = connection.Query<Models.PROFILE>(
"SELECT * FROM PROFILES WHERE ID=@ID",
new { ID = profileID }); // IEnumerable
var profile = profiles.First<Models.PROFILE>();
profile オブジェクトには、profileImages などの他のコレクションが含まれています。問題は、すべての子オブジェクトのアイテム数がゼロであることです。また、たとえば profileImages のデータのみを取得したい。
子オブジェクトを照会するために設定する必要があるものはありますか?もしそうなら、どれを何レベルまで指定することは可能ですか?
マルチマッピングも試しました:
var profiles = connection.Query<Models.PHOTOS_PERMISSIONS,
Models.PROFILE,
Models.PHOTOS_PERMISSIONS>(sql,
(p1, p2) => { p1.ID = profileID; return p1; },
new { ID = profileID },
splitOn: "OWNER_PROFILESIDFK, ID").AsQueryable();
PHOTOS_PERMISSIONS.OWNER_PROFILESIDFK = PROFILE.ID
そして、次のエラーが発生します。
マルチマッピング API を使用する場合、Id パラメータ名: splitOn 以外のキーがある場合は、splitOn パラメータを設定してください。
splitOn テキストのバリエーションを試してみましたが、それでも同じエラーが発生します。