Как я могу присоединиться к двум различным таблицам на основе условия?LINQ JOIN различные таблицы на основе условий
У меня есть запрос, как в:
var myquery = from p in db.tbl1
join q in db.tbl2 on p.field1 equals q.field1
join r in db.tbl3 on q.field2 equals r.field2
До здесь все в порядке, теперь я хочу добавить еще 1 присоединиться к столу, но она должна быть основана на состоянии, как:
if(q.field3 == 1)
join s in db.tbl4 on q.field4 equals s.field4
else if(q.field3 == 2)
join s in db.tbl5 on ....
Так что в основном я хочу присоединиться к различным таблицам на основе значения q.field3.
Можете ли вы предоставить фактические данные и фактические «полные» запросы? Попытка изменить форму на основе данных * в * запрос звучит очень .. подозрительно. (Хотя это может быть так же просто, как выполнить агрегатное объединение и фильтрацию/выбор нужных столбцов.) – user2864740
Является ли '' 'того же типа в обеих таблицах? Как вы планируете посмотреть остальную часть запроса, если это не так? –