у меня есть следующий запрос linq, который создает левое соединение между двумя таблицами:
var joinResultRows = from leftTable in dataSet.Tables[leftTableName].AsEnumerable()
join
rightTable in dataSet.Tables[rightTableName].AsEnumerable()
on leftTable.Field<string>(leftComparedColumnName) equals rightTable.Field<string>(rightComparedColumnName)
into leftJoinedResult
select new { leftTable, leftJoinedResult };
я хочу получить строки, которые отвечают на это: значение строки в левом столбце содержит значение строки в правом столбце.
я пробовал это:
var joinResultRows = from leftTable in dataSet.Tables[leftTableName].AsEnumerable()
join
rightTable in dataSet.Tables[rightTableName].AsEnumerable()
on leftTable.Field<string>(leftComparedColumnName).Contains(rightTable.Field<string>(rightComparedColumnName)) equals true
into leftJoinedResult
select new { leftTable, leftJoinedResult };
но это не работает, потому что rightTable не распознается в левой части соединения.
Как мне создать объединение, которое приводит к String.Contains, делать ли это в предложении «где» или в предложении «Вкл.»?