Я должен использовать .ToString(CultureInfo.CurrentCulture)
в каждом номере для преобразования строк, например. Могу ли я как-то переопределить .ToString()
, чтобы я не получал больше сообщений, таких как культура в преобразовании строк явно?.ToString() и .ToString (CultureInfo.CurrentCulture)
К примеру, сейчас я должен изменить каждый
myNumValue.Count.ToString();
в
myNumValue.Count.ToString(CultureInfo.CurrentCulture);
У меня были довольно интересные проблемы с людьми, которые не указали культуры на ToString или string.Format вызывает при записи пользовательских форматов файлов на диск. Когда новый коллега присоединился из Индии и Японии, возникли всевозможные проблемы. Разумеется, не указывая на культуру, двум пользователям приходится записывать разные форматированные данные, которые, конечно же, не могут быть прочитаны другими пользователями. Со временем я научился никогда не подавлять это правило или искать работу. Я видел слишком много проблем, вызванных тем, что не делал этого. – jessehouwing
Это еще хуже, если вы входите в производство с кодом, который форматирует или анализирует данные «общего использования», используя культуры клиентских потоков. Во многих случаях вы не можете вывести предполагаемую культуру из сохраненных данных (например: 3/5/2001 3 мая или 5 марта?), Поэтому вы не можете правильно очистить существующие данные, как только вы найти ошибку в производственной локализации. Тем не менее, я не обязательно применяю «сырую» ToString (культуру), поскольку иногда предпочитаю использовать механизм, который позволит мне поменять источники культуры. В таких случаях я обычно добавлял бы правило FxCop для предотвращения использования ToString. –