int.ToString () ошибка при конкатенации строк Visual Studio 2019 - PullRequest
3 голосов
/ 06 ноября 2019

После того, как я обновил Visual Studio 2019 с версии 16.2.5 до версии 16.3.5, в моем приложении возникли ошибки во всех местах, где я использую конкатенацию строк.

Пример:

int x = 5;
string y = x + " years";

Что изменилось? Как культура влияет на int? enter image description here

Ответы [ 2 ]

5 голосов
/ 06 ноября 2019

Я думаю, вы, возможно, отметили переключатель treat warnings as errors.

Int может отображаться в западных цифрах (0, 1, 2, 3, ... 9) или может отображаться вдругие цифры, такие как арабский (٠ ١ ٢ ٣) или тайский (๑ ๒ ๓) и т. д.

Поэтому представление int зависит от культуры и, следовательно, содержит ошибку.

информация, ознакомьтесь с официальной документацией.

3 голосов
/ 06 ноября 2019

Это сообщение связано с функцией анализа кода в Visual Studio. Для получения дополнительной информации об этом конкретном предупреждении см. документацию . Там написано:

[...] Члены .NET выбирают культуру и форматирование по умолчанию на основе предположений, которые могут быть неверны для вашего кода. Чтобы убедиться, что код работает так, как ожидается для ваших сценариев, вы должны предоставить информацию о культуре в соответствии со следующими рекомендациями: [...]

Обычно рекомендуется помнить .ToString звонки, которые в конечном итоге показываются пользователю.

...