我無法將App.Config文件加載到App Domain中。將app.config加載到AppDomain中
我使用
[System.AppDomain]::CurrentDomain.SetData("APP_CONFIG_FILE", $config_path)
從Powershell Calling .NET Assembly that uses App.config,但仍沒有加載App.config文件。
我也試過重置緩存,如Using CurrentDomain.SetData("APP_CONFIG_FILE") doesn't work in PowerShell ISE所述。
這裏是我的測試腳本:
$configFile = "{ActualPhysicalPath}\App.Config"
gc $configFile
Add-Type -AssemblyName System.Configuration
[Configuration.ConfigurationManager].GetField("s_initState", "NonPublic, Static").SetValue($null, 0)
[Configuration.ConfigurationManager].GetField("s_configSystem", "NonPublic, Static").SetValue($null, $null)
([Configuration.ConfigurationManager].Assembly.GetTypes() | where {$_.FullName -eq "System.Configuration.ClientConfigPaths"})[0].GetField("s_current", "NonPublic, Static").SetValue($null, $null)
[Configuration.ConfigurationManager]::ConnectionStrings[0].Name
[System.AppDomain]::CurrentDomain.SetData("APP_CONFIG_FILE", $null)
[Configuration.ConfigurationManager]::ConnectionStrings[0].Name
[System.AppDomain]::CurrentDomain.SetData("APP_CONFIG_FILE", $configFile)
[Configuration.ConfigurationManager]::ConnectionStrings[0].Name
我一直都想與存儲在machine.config中,而不是那些在App.config的連接字符串。
如何獲取我的特定App.Config文件加載到應用程序域中?
您是否嘗試過使用ConfigurationManager.OpenExeConfiguration方法? – 2013-04-26 11:31:07
我只是試過了,它仍然不起作用 – 2013-04-26 12:00:31
我誤解了這個問題。抱歉。您不能將配置文件重命名爲YOUR_APPLICATION_NAME.exe.config並將其複製到應用程序文件夾?這應該工作。該應用程序將加載該文件。 – 2013-04-26 14:52:40