我正在使用以下内容检索个人资料详细信息:
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 文本中的内容的变体,但仍然得到相同的错误。