Vb.net LINQ DefaultIfEmpty应返回具有空值的对象数组

Vb.net LINQ DefaultIfEmpty应返回具有空值的对象数组,vb.net,linq,defaultifempty,Vb.net,Linq,Defaultifempty,我有一个LINQ查询: Dim JoinedResult = LeftTable.GroupJoin(RightTable, Function(LeftTableRow) LeftTableRow(FieldIndexInLeftTable), _ Function(RightTableRow) RightTableRow(FieldIndexInRightTable), _

我有一个LINQ查询:

Dim JoinedResult = LeftTable.GroupJoin(RightTable, Function(LeftTableRow) LeftTableRow(FieldIndexInLeftTable), _
                                     Function(RightTableRow) RightTableRow(FieldIndexInRightTable), _
                                     Function(LeftTableRow, RightTableRow) _
                                     New With {LeftTableRow, RightTableRow}).SelectMany(Function(Rows) Rows.RightTableRow.DefaultIfEmpty().Select(Function(Right) New With {Rows.LeftTableRow, Right}))
LeftTable有5列,RightTable有2列

只有在前11行的情况下才有匹配:

问题是,我应该如何修改DefaultIfEmpty,即我得到一个包含两个元素的对象数组,其中每个元素都是空的,我们不说什么,主要的一点是,元素应该是空的

我应该这样做,RightTable的列号可以更改

谢谢

编辑:

我有解决办法

我创建了一个包含2个元素的对象数组:

Dim NullValue() As Object = Nothing
Array.Resize(NullValue, 2)
NullValue(0) = DBNull.Value
NullValue(1) = DBNull.Value

然后我在DefaultIfEmpty函数中使用它,如下所示:DefaultIfEmptyNullValue

请将您的解决方案添加为答案,并将其标记为答案