Я работаю над разработкой EF CTP5 Code First с существующей базой данных. Мне нужно получить данные из двух таблиц путем сравнения столбцов разных типов.
Например - Здесь p.ColumnA
равно varchar
, а q.ColumnA
равно int
, но значения могут быть одинаковыми для нескольких записей. Итак, я пытаюсь сделать Convert.ToInt32
, который не работает. У меня нет полного контроля над базой данных для изменения таблицы.
from p in context.TableA
from q in context.TableB
where p.ColumnZ == "ABC" &&
(p.ColumnA == null || Convert.ToInt32(p.ColumnA) == q.ColumnA) &&
(p.ColumnB == null || p.ColumnB == q.ColumnB)
select p.ColumnC
Может кто-нибудь предложить решение? Спасибо.