Файл конфигурации является необязательным, если его не существует, например, ASP.NET обратится к файлу machine.config, хранящемуся в системных каталогах .NET, чтобы получить значения по умолчанию для всей машины.
Если вы на самом деле добавляете код в свое приложение для получения настроек из файла конфигурации (скажем, с использованием класса ConfigurationManager ), а он не существует, вы получите нулевые значения.
Именно поэтому важно проверить эту ситуацию и сделать так, чтобы ваше приложение самостоятельно приняло решение о том, как / если продолжить.