如何从asp.net网页上读取应用程序的app.config文件中的值?

时间:2012-02-19 15:58:50

标签: asp.net xml vb.net web-config app-config

基本上我有一个.net应用程序,其目录路径存储在app.config文件中。此目录路径输出将由asp.net网页读取的xml文件。

有什么方法可以让asp.net网页读取存储在app.config文件中的目录路径?我是否应该使用web.config文件?

3 个答案:

答案 0 :(得分:2)

最简单的方法是将目录路径复制到asp.net Web应用程序的web.config文件中。您可以将路径放在web.config文件的AppSettings元素中,如下所示:

<appSettings>
  <add key="FilePath" value="d:\fileDirectory" />
</appSettings>

然后,您可以使用WebConfigurationManager或ConfigurationManager从asp.net应用程序中读取此值。 WebConfigurationManager是首选方法,因为它知道如何处理ASP.Net配置继承(请参阅下面的Antonio的评论)。

您需要确保运行asp.net进程的Windows帐户具有对存储XML文件的指定目录的读取权限。您可以使用目录的ACL设置进行调整。

或者,不是在web.config中复制目录路径,而是尝试让您的asp.net应用程序直接读取.net应用程序的app.config文件中的路径。在这种情况下,您需要将文件的内容加载到XDocument中或使用.net中的配置解析工具,然后解析文件以提取值。您需要确保您的asp.net应用程序有权读取app.config文件。而且你仍然需要在web.config中存储一个路径,这次指向app.config文件所在的位置。所以我个人而言,我只是将xml文件的路径复制到asp.net应用程序的web.config文件中。

答案 1 :(得分:0)

要从web.xml读取应用设置,请使用
System.Configuration 命名空间

下的 ConfigurationManager
<appSettings>
    <add key="filepath" value="D:\folder"/>
</appSettings>

阅读此设置

ConfigurationManager.AppSettings["filepath"].ToString()

答案 2 :(得分:-1)

Dim Xmldoc As New XmlDocument
Dim xmlatt As XmlAttribute
xmldoc.load("your file path")
xmlatt =xmldoc.SelectSingleNode("/configuration/appSettings/add[@key = 'keyname']/@value")

您可以将值用作xmlatt.value