I got this in SQL:
with 3 Values: value1, value2, value3
SELECT A.a, A.b, E.c, B.d, A.e, A.f, A.g, D.h, D.i
FROM Alpha as A
INNER JOIN Beta as B ON A.b = B.k
LEFT OUTER JOIN Charlie as C ON C.a = A.a
LEFT OUTER JOIN Delta as D ON D.k = B.j
INNER JOIN Echo as E ON A.a = E.a
WHERE A.a = @value1 AND E.c = @value2 AND (A.a = @value3 OR @value3 = '') AND A.b = E.b
Alpha, Beta, Charlie, Delta and Echo have string a,b,c,d,e,f,g,h,i,j,k.
I've tried to convert into Linq, but I don't get the Syntax of join right. Can you show me how it should look? x)
public static List<value> GetSmthn(string value1, string value2, string value3)
{
return (
from A in Alpha
join B in Beta on A.b equals B.k
join C in Charlie on A.a equals C.a
join D in Delta on B.j equals D.k
join E in Echo on E.a equals A.a
where (A.a == value1 && E.c == value2 && (A.a == value3 || value3 == "") && A.b == E.b)
select new value() { a = A.a, b = A.b, c = E.c, d = A.d, e = A.e, f = A.f, g = A.g, h = D.h i = D.i }
).ToList();
}
Thanks for help, maybe it's a bit confusing. Cause I changed the variable-names. Sorry for the bad english btw