У меня есть служба windows topshelf, где я хочу выполнить некоторую проверку (т.е. если файл xml существует), и если проверка завершилась неудачно, мне нужно остановить службу Windows.
Поэтому я попытался выполнить проверку в методе Start(), а затем создать исключение:
public void Start()
{
if (!File.Exists(_xmlFile) throw new FileNotFoundException();
// Do some work here if xml file exists.
}
Тем не менее, служба Windows остается как процесс после исключения, который я должен убить вручную в диспетчере задач.
Есть ли способ не запускать службу, если выполняются определенные условия (т.е. файл не найден)?