如何在以下查询中检查NULL值;使用vb.net?

时间:2016-01-05 14:46:26

标签: vb.net nullable invalidoperationexception

我正在努力为下面的代码提供正确的语法;我知道我需要用?并且可能是带有?的数据类型;但让它实际工作是一个不同的故事...任何帮助将不胜感激;谢谢!

这是我的代码:

Dim products = Nothing
Try
    products = (From p In dizzleContext.PRODUCTs
                Where p.SKU.StartsWith(feedPrefix)
                Select New PricingProduct With {.SKU = p.SKU,
                                                .UPC = p.UPC,
                                                .UnitOfSale = p.Unit_Of_Purchase,
                                                .UnitOfPurchase = p.Unit_Of_Sale,
                                                .Chocolate = p.Chocolate,
                                                .WeightOZ = p.Weight_OZ,
                                                .MAP = p.MAP}).ToList()
Catch ex As Exception
    Stop
    'TODO: Fix any errors here
    'Errors:
End Try

我的错误:

  

转换为值类型' System.Boolean'失败,因为   具体化值为null。结果类型的通用参数   或者查询必须使用可空类型。

1 个答案:

答案 0 :(得分:0)

错误是因为我在product表中添加了新记录 - 巧克力字段中的空值 - 这是一个布尔值,在代码中不可为空。

鉴于错误及其原因,我可以告诉我需要检查该字段是否为空;但是首先不应该有空值,所以无论哪种方式都可以解决。

(对不起安德鲁,我到现在为止没看到你的评论,但显然是巧克力场 - 谢谢)