Дело в том, что GetString как и GetChars по ходу дела преобразует содержимое в Unicode, в этом-то и проблема.
Если посмотреть результат запроса:
select
convert(varbinary(100),substring(myDamnedTextField,1,100))
from ....
|
и сравнить увиденное с тем, что показывает отладчик в результате GetString (или GetChars), то разница заметна очень сильно...