没有返回记录时VB.NET LINQ to EF Sum函数错误
已经看过C的一些解决方案,但不知道如何在VB.NET中解决这个问题 查询:没有返回记录时VB.NET LINQ to EF Sum函数错误,vb.net,linq-to-entities,Vb.net,Linq To Entities,已经看过C的一些解决方案,但不知道如何在VB.NET中解决这个问题 查询: Dim Query = (From t In myEntities.Bookings Where(t.Ref = Someid) Select t.People).Sum() t、 Ref字段是Int,t.People也是Int SomeId值是相关表的主键。这个问题是Bookings表中并不总是有Ref值为Someid的记录,因此查询抛出以下错误 我看到其他人在捕捉错误时绕过了这个问题,但是从阅读这个问题以及根据错误
Dim Query = (From t In myEntities.Bookings
Where(t.Ref = Someid)
Select t.People).Sum()
t、 Ref字段是Int,t.People也是Int
SomeId值是相关表的主键。这个问题是Bookings表中并不总是有Ref值为Someid的记录,因此查询抛出以下错误
我看到其他人在捕捉错误时绕过了这个问题,但是从阅读这个问题以及根据错误信息来看,似乎应该在VB.NET中找到一个解决方案,将查询或查询中的某些字段强制转换为可为null的类型
错误如下:
转换为值类型“Int32”失败,因为具体化的值为null。结果类型的泛型参数或查询必须使用可为null的类型。您的总和处理的是int,而您真正想要的是可为null的int Dim Query=来自myEntities.Bookings中的t,其中t.Ref=Someid选择t.People.SumFunctionx CTypex,整数 请看这里: