我创建了一个类类型的变量(CustomerInfo)来存储linq查询结果,当我查看或使用colResults变量时,得到错误消息'可空对象必须有值'(SurveyDate是一个可以为空的字段在sql表中):
Dim var = SurveyDBcontext.QT_Survey_GetSurveySchedule(1, 1, 1).ToList()
Dim colResults = From query In var _
... _
Select New CustomerInfo With { _
.Address = comp.Address, _
.SurveyDate= query.SurveyDate}
如果我将上述内容更改为:
Dim colResults = From query In var _
... _
Select New With { _
.Address = comp.Address, _
.SurveyDate= query.SurveyDate}
如果工作正常。有什么想法吗?
感谢。
答案 0 :(得分:0)
您的“地址”或“ServeyDate”字段返回空值,而您的CustomerInfo类不允许空值。
第二个例子是生成一个允许空值的匿名类型。你能检查生成的实际类型吗?在第二个例子中猜测SurveyDate是一个可以为空的DateTime。