Я хочу синтаксис SQL Entity Framework для IN
пункта с подзапроса .. Мой оригинальный синтаксис подобенEntity Framework Синтаксис для пункта с использованием подзапроса
Select * from Table1 where Table1.id in (select table2.id from Table2 where 1=1)
Я попытался написать это, как показано ниже:
"SELECT VALUE pkg_outer from
(SELECT distinct(pkg) from ExploitaEntities.mst_package as pkg WHERE 1=1
AND pkg.package_id in
(SELECT VALUE dtl_outer FROM(select distinct(dtl.package_id) from ExploitaEntities.mst_pkg_detail as dtl where 1=1))
as dtl_outer)
as pkg_outer"
, но он дает мне ошибку, как показано ниже:
"The element type 'Edm.Int32' and the CollectionType 'Transient.collection[Transient.rowtype[(package_id,Edm.Int32(Nullable=True,DefaultValue=))](Nullable=True,DefaultValue=)]'
are not compatible. The IN expression only supports entity, primitive, and reference types.
Near IN set expression,..."
В вашем примере не используется Entity Framework. Где код EF? – Luke
Вы не нуждаетесь в 'SELECT VALUE dtl_outer FROM (' part. –
Это только структура сущности. Использовали простой sql вместо LINQ-кода, но только с использованием модели базы данных сущностей – Ashish