C # Convert.ToDouble Входная строка не была в правильном формате в службе Windows - PullRequest
0 голосов
/ 09 декабря 2018

Последние несколько недель я запускаю консольное приложение без проблем.Однако, как только я конвертировал приложение в службу Windows, у меня появлялись ошибки, когда я конвертировал строку в double с использованием функции Convert.ToDouble ().Здесь я получаю сообщение об ошибке «Входная строка была не в правильном формате».

Другие сообщения в основном относятся к использованию информации о культуре, такой как Convert.ToDouble (string, CultureInfo.InvariantCulture).

Но мой код работает в течение нескольких недель без каких-либо проблем, почему запуск того же кода в качестве службы имеет значение?

Заранее спасибо!

1 Ответ

0 голосов
/ 09 декабря 2018

Возможно, ваша служба работает под другим пользователем (это самая распространенная проблема (и ответ относительно служб Windows) с другой культурой.

Чтобы быстро проверить это - установите службу как «Вы». Еслимоя теория верна, она должна работать нормально. Не не решайте проблему таким образом. Вместо этого вернитесь к пользователю, которого вы должны использовать, и убедитесь, что вы вернули проблему. Теперь вы знаете, что это связано с пользователем.

Затем сделайте то, что предлагают сети с InvariantCulture, чтобы правильно решить проблему.

...