Include while joining
- Hi,
I have a query like this
using (AIR20_con context = new AIR20_con()) { var result = from s in context.StudentSet.Include("Nat") join v in context.VInsSet on s.RELATIE_ID equals v.RELATIE_ID where (s.NAT.NATGBA != 1 && v.INS_JR == insJr) select s;
Do have a relationship, while VIns and Student have the same column (Relatie_id).
In the result the table NAT is not included, while query like
using (AIR20_con context = new AIR20_con()) { var result = from s in context.StudentSet.Include("Nat") where (s.Field != 1) select s;has no problem.
Can I solve the problem, or should I create a work around? By the way, its an Oracle DB with DevArt dataprovider
Robin
解答
Hi Robin
This behavior is by design.
If the query contains operation that changes the intermediate result type between the Include and the outer most operation, like the join operation does in your first query, the Include is ignored.
You could rewrite the query in the following way to have to Include honored:
var result = ((ObjectQuery<Student>)(
from s in context.StudentSet.Include("Nat")
join v in context.VInsSet on s.RELATIE_ID equals v.RELATIE_ID
where (s.NAT.NATGBA != 1 && v.INS_JR == insJr)
select s).Include(“Nat”);
I hope that helps.
Thanks,
Kati
This posting is provided "AS IS" with no warranties, and confers no rights.- 已提議為解答Kati Iceva - MSFT版主2009年7月2日 下午 09:44
- 已標示為解答RobinBronsteede 2009年7月3日 上午 05:50
所有回覆
Hi Robin
This behavior is by design.
If the query contains operation that changes the intermediate result type between the Include and the outer most operation, like the join operation does in your first query, the Include is ignored.
You could rewrite the query in the following way to have to Include honored:
var result = ((ObjectQuery<Student>)(
from s in context.StudentSet.Include("Nat")
join v in context.VInsSet on s.RELATIE_ID equals v.RELATIE_ID
where (s.NAT.NATGBA != 1 && v.INS_JR == insJr)
select s).Include(“Nat”);
I hope that helps.
Thanks,
Kati
This posting is provided "AS IS" with no warranties, and confers no rights.- 已提議為解答Kati Iceva - MSFT版主2009年7月2日 下午 09:44
- 已標示為解答RobinBronsteede 2009年7月3日 上午 05:50
- Thanks Kati,
This solves the problem
Robin

