我有一个 IQueryable 方法如下:
public IQueryable<vmTest> TestMethod(long ID)
{
return from m in db.table1
join n in db.table2
on m.table1_ID equals n.table1_ID into tabC
from c in tabC
join o in db.table3
on m.table3_ID equals o.table3_ID
where m.table1_ID.Equals(ID)
select new vmTest{ field1 = m.xxx };
}
从上面的代码中,m.xxx是一个 long 类型,在vmTest中有一个public long field1。m.xxx有错误,说不能隐式转换类型“长?” 到“长”。存在显式转换(您是否缺少演员表?)。我可以知道有什么问题吗?
附加信息:
如果我在m.xxx前面转换(long),错误将会消失,但是当这个查询没有返回值时会出现另一个问题,因为将long转换为null是错误的