Выходной параметр хранимой процедуры varchar

Вчера я заметил нечто странное, когда возвращал выходной параметр varchar(100) из моей хранимой процедуры в моем приложении asp.net. Похоже, что возвращаемое значение теперь включает дополнительные пробелы, чтобы вернуть целые 100 символов. Это поведение новое. Единственное, что я изменил в последнее время, - это перенос проекта с VS 2015 на 2017 год. Я использую System.Data.SQLClient для подключения к базе данных. Операторы select для столбцов varchar возвращают только значения в столбцах и не содержат лишних пробелов. Ansi_padding отключен для базы данных и не установлен где-либо в коде.

set @Message = 'Project Updated!' --where @Message is varchar(100)

Это вернется к клиенту.

_UpdateStatus = oData.outputParams.Item("@Message") 
_UpdateStatus = "Project Updated!                                                                                    "

Любые идеи относительно того, что происходит?

1 ответ

Ленивое решение:

_UpdateStatus = ((string)oData.outputParams.Item("@Message")).Trim()
Другие вопросы по тегам