Каждый экземпляр, который я видел во всех моих LINQ to SQL, использует параматеризованные запросы, поэтому я понятия не имею, как вы получили этот вывод ... он должен быть примерно таким:
WHERE ([t0].[Name] = @p0)
--@p0 VARCHAR John
если вы установите свой context.log равным console.out, вы увидите, что все sql выполняются ... Я предлагаю это только для того, чтобы убедиться, что именно так и происходит.