使用VB.NET查询MongoDB - 可空类型

时间:2012-07-28 23:38:03

标签: vb.net mongodb nullable

MongoDB C#驱动程序根据此Jira票证支持Nullable(Of T)上的查询: https://jira.mongodb.org/browse/CSHARP-483

但是,我遇到了让它运转的问题。

mycol.AsQueryable.Where(Function(p) p.MyNullableInteger = 3)

按照说明,我从查询中删除了.Value属性,但这打破了严格的输入,因此我不得不删除Option Strict On子句。然后它成功编译,但我理想情况下会喜欢该条款。

PredicateTranslator抛出异常如下:

不支持的where子句:(布尔值)(p.MyNullableInteger ==(Nullable)3)

.NET生成的实际Where子句表达式为:

p =>转换((p.MyNullableInteger == ConvertChecked(3)))

我正在使用驱动程序1.5。我的POCO类确实注册了一个类映射,但是这里的映射没有引用该属性(它只是为我的Id属性设置从String到ObjectId的表示)。

1 个答案:

答案 0 :(得分:0)

原来这只是Visual Basic中的一个错误。它在C#中运行良好。我在这里创建了一个Jira:https://jira.mongodb.org/browse/CSHARP-542

我还要编辑你的问题标签以包含VB而不是c#。