Можно ли выполнить запрос linq с конкатенацией строк вместо идентификаторов? - PullRequest
0 голосов
/ 24 марта 2012

У меня есть запрос, который отлично работает

var queryItems = rawQuery.ObsDataResultList.AsQueryable().Where("Name = @0 AND AuthoredDate = @1" +, selectedItem, dateKey).ToList();

Я хочу обновить запрос до

var queryItems = rawQuery.ObsDataResultList.AsQueryable().Where("Name = @0 AND AuthoredDate = " + dateKey.ToString(), selectedItem).ToList();

Обратите внимание, единственное, что я изменил, - это удаление идентификатора. Теперь я получаю сообщение об ошибке

Оператор '=' несовместим с типами операндов 'DateTime?' и 'Int32'

Как исправить ошибку, не возвращаясь к исходному запросу?

1 Ответ

3 голосов
/ 24 марта 2012

Вам не хватает кавычек:

.Where("Name = @0 AND AuthoredDate = \"" + dateKey + "\"")

Кажется, это действительно плохая идея испортить ваш код, как это. Ваш оригинальный запрос кажется намного лучше.

...