Visual Studio (или TFS) случайным образом добавляет странные биты в файл .config - PullRequest
1 голос
/ 08 апреля 2020

Я видел странные проблемы с файлами *.config, объединенными через TFS и Visual Studio.

В некоторых случаях, особенно когда файл новый, теги add в appsetting у тегов есть странные биты в свойствах value. Я загрузил пример здесь .

Эти биты не видны в следующих текстовых редакторах:

  • Visual Studio
  • Блокнот
  • Блокнот ++ - пробовал в обоих кодировках (ANSI и UTF8 (с или без спецификации)), и биты не показывались ни в одном из них.

В них, похоже, все хорошо.

Однако на VIM (я только что вспомнил о его существовании сейчас, когда писал этот пост):

enter image description here

Это серьезная проблема: В основном в app.config, когда сервис Windows читает его, эти значения часто сопровождают странные биты.

Например, если я пытаюсь запустить сервис Windows с этим app.config файл

int.TryParse(ConfigurationManager.AppSettings["HorarioProcessamentoMudarFila"], out int changingHour);
Console.WriteLine(ConfigurationManager.AppSettings["HorarioProcessamentoMudarFila"])

TryParse завершается неудачно, а Console показывает "?? 7 ??". (обратите внимание на «7» в середине «?»).

Когда я запускаю этот код в LINQPad

File.ReadAllBytes(@"C:\temp\fileName.txt").Select((i, o) => new { 
    index = o,
    value = i,      
    ansi = System.Text.Encoding.Default.GetString(new byte[] { i }),
    utf8 = System.Text.Encoding.UTF8.GetString(new byte[] { i}),         
    t = (char)i
}).Dump();

enter image description here

Я вижу, что в кодировке ANSI эти биты переводятся в ‪ и ‬, так что это какой-то разделитель управления.

Есть ли здесь известная проблема? Откуда взялись эти биты?

РЕДАКТИРОВАТЬ: Уточнил использование Notepad ++.

1 Ответ

0 голосов
/ 09 апреля 2020

В командной строке Visual Studio вы можете ввести: tf properties file (или tf properties file), а в строке Тип файла отобразится текущая кодировка. См. Команда свойств для получения дополнительной информации.

И Настройте кодировку файла управления версиями через Source Control Explorer в Visual Studio, чтобы увидеть, помогает ли он вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...