У меня есть вопрос linq (linq to sql). У меня есть следующий код кода, который отлично работает;Проблемы с запросом Linq - определение столбца во время выполнения
var queryx = (from sa in d1.SampleAttributes
where nodeTable.ToList().Distinct().Contains(sa.client_post_code_prefix)
select sa.SampleId).Distinct();
Примечание: nodeTable имеет тип IQueryable
Однако, я хотел бы изменить это так, чтобы имя столбца в методе содержат может быть принято во время выполнения. Я определяю имя столбца из другого запроса, зависящего от применяемых определенных пользовательских фильтров, и в идеале хотел бы что-то с логикой follwing;
// Обратите внимание, что строка я прохожу в получить «столбца» объект всегда разделяет то же имя столбца
var columnWhatever = GetColumnName(string colName);
var queryx = (from sa in d1.SampleAttributes
where nodeTable.ToList().Distinct().Contains(sa.client_post_code_prefix)
select sa.SampleId).Distinct();
До сих пор я не смог найти ничего, что позволит этому и я «Я начинаю думать, что Линк не допускает такой логики. Любая помощь будет очень благодарна
dup? http://stackoverflow.com/questions/2148309/how-do-i-reference-a-field-in-linq-based-on-a-dynamic-fieldname –
@Rob - не обязательно; на первый можно ответить с отражением, но это может быть что-то еще ... –
@saj - в чем заключается основная реализация LINQ здесь? LINQ к объектам? Entity Framework? LINQ к SQL? Это важно, к сожалению. –