1

昨天,当我从我的 asp.net 应用程序中的存储过程返回一个 varchar(100) 输出参数时,我注意到一些奇怪的事情。看来返回的值现在包括额外的空格以返回完整的 100 个字符。这种行为是新的。我最近唯一改变的是将项目从 VS 2015 迁移到 2017。我正在使用 System.Data.SQLClient 连接到数据库。varchar 列的 Select 语句仅返回列中的值,没有额外的空格。Ansi_padding 对数据库关闭,并且未在代码中的任何位置设置。

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

这将返回给客户端。

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

关于发生了什么的任何想法?

4

1 回答 1

0

懒惰的解决方案:

_UpdateStatus = ((string)oData.outputParams.Item("@Message")).Trim()
于 2017-10-12T10:37:32.947 回答