Ich versuche, herauszufinden, wie das Äquivalent zu erreichen:Wie verwende ich OData Expand wie einen SQL-Join?
select *
from Users u
inner join Comments c on c.UserId = u.Id
where Id = 1569
(Tabellen-Aliases für eine bessere Lesbarkeit SQL)
... auf dem Stackoverflow OData-Endpunkt. Wie würde diese URL aufgebaut werden? Ich sehe die Dokumentation für Expand bei OData.org und ich hätte gedacht, dass es so etwas wie aussehen würde:
https://odata.sqlazurelabs.com/OData.svc/v0.1/rp1uiewita/StackOverflow/Users?$Expand=Comments&$filter=UserId eq 1569
ist aber nicht richtig.
In Linq, wäre es diese (glaube ich), aber Mitglied werden nicht unterstützt:
Users.Where(u=>u.Id==1569).Join(Comments, u=>u.Id, c=>c.UserId, (a,b)=>a.Id==b.UserId)
Ich brauche nicht diese streng in Linq, um herauszufinden, versuche ich gerade um herauszufinden, wie die Abfrage-URL erstellt wird. Wie kann ich das SQL-Join-Prädikat in eine OData-URL übersetzen und dies in einem Aufruf tun?
Dies scheint die 1 Millionste Frage von Stack Overflow gewesen zu sein, herzlichen Glückwunsch! – jwaddell
Nun, wenn Sie Fragen zählen, die nicht gelöscht wurden, bis diese Frage gestellt wurde. – jjnguy
@jwaddell Ich legte eine Millisekunde nach der eigentlichen millionsten Frage ein, also denke ich, das ist 1e6 + 1 –