0

我在 c# Visual Studio 2010 中读取 DLL 应用程序设置时遇到问题。我发布了使用反射解决方法的示例代码,因为 ConfigurationManager 失败。

private string LDAPDomain 
{  
    get
    {
        string strPath = System.Reflection.Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName;
        string val = GetValues(strPath, "LDAPDomain"); 
        return val;
    }
}


//strPath is path of the file.
//strKey is key to access

private string GetValues(string strPath, string strKey)
{
    System.Configuration.Configuration con = System.Configuration.ConfigurationManager.OpenExeConfiguration(strPath);
    string strValue = con.AppSettings.Settings[strKey].Value;

    return strValue;
 }
4

1 回答 1

2

如果您期望引用 DLL 的主项目来获取应用程序设置,那么它不会那样工作。将ConfigurationManager读取执行程序集的配置,如果您想使用它,您需要将所有必要的配置放入您的应用程序中。

或者,您可以手动读取 DLL 的 app.config 文件的内容 - 请参阅此问题以获取一些示例代码。

于 2012-09-07T13:21:30.073 回答