Я думаю, что передача нулевого параметра OpenWebConfiguration
заставляет его открыть файл конфигурации машины.
Если вы читаете документы MSDN по этому вопросу.Вы заметите, что это говорит о том, что передача NULL даст вам root web.config.
Так что вы можете подумать, что это то, что вы хотите.Но это не так.Корневой файл web.config фактически находится в пути установки .NET .... обычно c: \ windows \ Microsoft.NET \ Framework [.NET VERSION] \ Config
Попробуйте указать путь к файлу конфигурации.Используйте этот оператор вместо пути, чтобы получить текущий путь к сайту
WebConfigurationManager.OpenWebConfiguration(System.Web.Hosting.HostingEnvironment.ApplicationVirtualPath)
. Это гарантирует, что вы получите правильный файл конфигурации каждый раз, в любой среде