关于c#:阅读DLL app.setting的问题

Problems in reading DLL app.setting

我在C Visual Studio 2010中读取DLL应用程序设置时遇到问题。我发布了一个使用反射的get workarounded示例代码,因为使用configurationmanager失败了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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;
 }

如果您希望引用dll的主项目获取应用程序设置,则不会这样工作。ConfigurationManager将读取正在执行的程序集的配置,如果您想使用它,您需要将所有必要的配置放入您的应用程序中。

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