0
我的SQL查询如下。子顶部1和多于等于使用Linq的子查询
select st.kProductVersionPlatformFrom, st.kProductVersionPlatformTo, pv.kProduct, pv.nId, *
from vSysTable st
left join vProductVersion pv on st.kProductVersionPlatformFrom = pv.nId
where
st.kProductVersionPlatformTo >= (select top 1 nid from vProductVersion where kProduct = 2
and kProductVersionPlatform = 87 order by nId desc)
我试图将其转换为LINQ的,但无法找到的方式来使用大于等于
var systemTableList = (from sysTableEntity in _sysTableEntityRepository.AsQueryable()
join versionEntity in _productVersionRepository.AsQueryable() on
sysTableEntity.ProductVersionPlatformFrom equals versionEntity.Id
into leftjoined
from joinedsysVersionTable in leftjoined.DefaultIfEmpty()
where (from versionEntity in _productVersionRepository.AsQueryable()
where versionEntity.ProductEntityId.Equals(2) &&
versionEntity.PlatformProductVersionEntityId.Equals(87)
orderby versionEntity.Id descending
select versionEntity.Id).Take(1).Contains(sysTableEntity.ProductVersionPlatformFrom >= 87)
select new { sysTableEntity});
但它给我的错误附近的包含关键字的“之类的说法无法推断用法“
这里用什么来代替包含?我也尝试使用但仍然无法使用。
如果它所返回null? – DevelopmentIsMyPassion 2013-03-12 11:33:41
如果top 1查询返回null,该怎么办? – DevelopmentIsMyPassion 2013-03-12 11:46:10
@AshReva你必须告诉我。 – 2013-03-12 11:51:13