试图联接两个表,其中一边的键的一部分可以为空。得到“类型参数不能从用法中推断”,我相信这与键中不匹配的类型有关。
TableA.GroupJoin(TableB,
a => new {a.IntKeyA, a.StringKeyA},
b => new {b.NullIntKeyB, b.StringKeyB}
(tabA, tabB) => new {tabA, tabB});
尝试强制转换TableA中的键的类型
a => new (int?, string) {a.IntKeyA, a.StringKeyA}
或
a => (int?, string)(new {a.IntKeyA, a.StringKeyA})
尝试合并TableB中的键,幻数0不是很好,但在这种情况下可以工作。
b => new {b.NullIntKeyB ?? 0, b.StringKeyB}
已尝试获取值或默认值
b => new {b.NullIntKeyB.GetValueOrDefault(), b.StringKeyB}
我想我可能会定义一个类来保存键,但我真的不想每次出现这个问题时都这样做。
1条答案
按热度按时间sr4lhrrt1#
就目前而言,这似乎已经奏效,但我还不打算把它标记为答案,希望有一个更容易的方法。
...