大约有 100 个父表,所有表都以 RECID 作为它们的标识列。没有两个父母包含相同的 RECID。有一个带有外键 RECID 的子表。
我尝试使用以下想法,其中 nebulous 根据用户需求在 100 个表域上变化:
var stuff = _d.Query<dynamic, sameAgain, dynamic>(
new Relator().relatem,
"select * from nebulous as n left join sameAgain on n.RECID = RECID"
);
...
class dynamic Relator {
relatem(dynamic parent, sameAgain child)
{
// inspired by the most recent blog Multi-POCO in PetaPoco
... (parent as IDictionary<string, object>)["RECID"] ...
}
}
没有骰子。我进入那里并感到困惑,因为调试器显示的对象不是父级的 ExpandoObjects。所以我尝试用 ExpandoObject 替换动态。
还是没有骰子。所以它仍然是一个有趣的死胡同。有没有人试过这个?