http://blog.163.com/lc_chenlong/blog/static/180431557201182295421485/
dll的app.config如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="dllAppKey" value="dllAppValue"/>
</appSettings>
</configuration>
web中的config如下:
<appSettings>
<add key="exeConfigKey" value="exeConfigValue" />
</appSettings>
================================
读取方法如下:
public string GetDLLAppKey()
{
string filePath = System.Reflection.Assembly.GetExecutingAssembly().CodeBase.Replace(@"file:///", string.Empty) + ".config";
XmlDocument xDoc = new XmlDocument();
xDoc.Load(filePath);
return xDoc.SelectSingleNode(@"/configuration/appSettings/add[@key='dllAppKey']").Attributes["value"].Value;
}
public string GetDLLAppKey2()
{
ExeConfigurationFileMap map = new ExeConfigurationFileMap();
map.ExeConfigFilename = System.Reflection.Assembly.GetExecutingAssembly().CodeBase.Replace(@"file:///", string.Empty) + ".config";
Configuration configuration = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);
return configuration.AppSettings.Settings["dllAppKey"].Value;
}
public string GetDLLAppKey3()
{
return ConfigurationManager.AppSettings["exeConfigKey"];
}
================================
test.aspx页面如下:
this.Page.Response.Write(new ClassLibrary1.Class1().GetDLLAppKey());
this.Page.Response.Write("<br />");
this.Page.Response.Write(new ClassLibrary1.Class1().GetDLLAppKey2());
this.Page.Response.Write("<br />");
this.Page.Response.Write(new ClassLibrary1.Class1().GetDLLAppKey3());
输出结果如下:
dllAppValue
dllAppValue
exeConfigKey
================================
相关参考:
类项目中的配置文件app.config在打包安装后的信息获取的问题
地址:http://www.cnblogs.com/ppp-213/archive/2009/04/08/1431471.html
一种强行指定dll assembly读取其相应*.dll.config配置文件的方法(又名:如何创建.net 的DCOM)
地址:http://www.cnblogs.com/Winston/archive/2009/04/24/1443044.html