2015-11-18 4 views
0

Я запускаю следующий запрос LINQ to sql, но он не возвращает никаких результатов. Но когда я запускаю его [эквивалент] в sql-сервере, он возвращает данные!Linq to sql равнозначный запрос на запрос sql-сервера

select * from [LocalizedProperty] 
where LanguageId = 3 
and LocaleValue like '%cards%' 
and (LocaleKey = 'Name' or LocaleKey = 'Description') 

и запросов LINQ

Dim suggesstions As IEnumerable(Of LocalizedProperty) = _ 
        (From sugg In result 
        Where sugg.LanguageId = 3 _ 
        AndAlso sugg.LocaleValue.Contains(catalogRetrieveInfo.search_term) _ 
        AndAlso (sugg.LocaleKey = "Name" OrElse sugg.LocaleKey = "Description") Select sugg) 

Правильно ли это?

+0

Что вы хотите сказать? –

+0

Мой вопрос в том, что когда я запускаю запрос в sql-сервере, он возвращает данные. , но когда я запускаю его с помощью LINQ, он не возвращается .. так они эквивалентны? правильный синтаксис в linq –

+0

Вы не можете, вам нужно перевести его –

ответ

1

Я думаю, что все будет так.

from sugg In result Where sugg.LanguageId == 3 && sugg.LocaleValue.Contains(catalogRetrieveInfo.search_term) && sugg.LocaleKey == "Name" || sugg.LocaleKey == "Description" select sugg 

Вы также можете использовать LINQPad, чтобы опробовать запрос. Используя LINQPad, вы можете перевести запрос LINQ в SQL.

дайте мне знать, как это сработало для вас.

+0

Спасибо, мой друг :) –

Смежные вопросы