今天我打开了一个 Visual Basic 项目,其中有几行声明了一些字符串,其中包含逗号分隔的数据。我修改了其中一根字符串,重建并关闭了该项目。当我来测试时,出现了错误。当我查看代码时,我发现我修改的那一行之后的字符串也发生了变化——它们在逗号后面插入了空格。
有没有人在 Visual Studio 2015 中看到过 IDE 错误应用格式的普通字符串?
看起来该字符串正在被格式化,就好像它是代码一样。我怀疑这与字符串插值有关,尽管这些是不使用它的遗留项目。
编辑,FWIW 代码与此类似,我已重命名字段和标题以尽量保持简短。
fullColumnMappingsBuilder.Append(",field1,field2,field3,field4,field5,field6,field7,field8,field9,field10")
fullColumnHeadingsBuilder.Append(",heading1,heading2,heading3,heading4,heading5,heading6,heading7,heading8,heading9,heading10")
If clientCode = "ML" Then
fullColumnMappingsBuilder.Append(",mlField")
fullColumnHeadingsBuilder.Append(",mlHeading")
End If
defaultColumnMappingsBuilder.Append(",morefields1,morefields2,morefields3,morefields4")
defaultColumnHeadingsBuilder.Append(",moreHeadings1,moreHeadings2,moreHeadings3,moreHeadings4")
我的编辑是简单地添加 field11 和 header11,然后保存。但代码最终看起来像这样:
fullColumnMappingsBuilder.Append(",field1,field2,field3,field4,field5,field6,field7,field8,field9,field10,field11")
fullColumnHeadingsBuilder.Append(",heading1,heading2,heading3,heading4,heading5,heading6,heading7,heading8,heading9,heading10,heading11")
If clientCode = "ML" Then
fullColumnMappingsBuilder.Append(", mlField")
fullColumnHeadingsBuilder.Append(", mlHeading")
End If
defaultColumnMappingsBuilder.Append(", morefields1, morefields2, morefields3, morefields4")
defaultColumnHeadingsBuilder.Append(", moreHeadings1, moreHeadings2, moreHeadings3, moreHeadings4")
问题是 IDE 在我未编辑的行的逗号后面插入了空格。