linq to sql не помещает кавычки вокруг строк в предложении where

У меня есть простой запрос Linq to SQL, который извлекает данные с предложением where строкой. В результирующем запросе строка не заключена в кавычки.

Пример

string name = "John";
var query = from n in db.Names where n.Name == name select n;

результат

.... ГДЕ ([t0]. [Name] = Джон) ....

Сеть - это varchar (10), а TNT был заполнен из строковой переменной (не называемой John ;-).

Странно то, что ... иногда это происходит, а иногда нет!

Идеи?


person Community    schedule 19.11.2008    source источник


Ответы (1)


Каждый экземпляр, который я видел во всех моих LINQ to SQL, использует параметризованные запросы, поэтому я понятия не имею, как вы получили этот результат ... он должен быть похож на следующие строки:

WHERE ([t0].[Name] = @p0)
--@p0 VARCHAR John

если вы установите свой context.log на console.out, вы можете увидеть, как выполняется sql .. Я предлагаю это только для того, чтобы убедиться, что это именно то, что происходит.

person Quintin Robinson    schedule 19.11.2008