一尘不染

app.config / web.config中的变量

c#

是否可以在app.configweb.config文件中执行以下操作?

<appSettings>
 <add key="MyBaseDir" value="C:\MyBase" />
 <add key="Dir1" value="[MyBaseDir]\Dir1"/>
 <add key="Dir2" value="[MyBaseDir]\Dir2"/>
</appSettings>

然后,我想通过简单地说出代码来访问Dir2:

 ConfigurationManager.AppSettings["Dir2"]

当我将应用程序安装在不同的服务器和位置时,这将对我有帮助,在这些服务器和位置中,我只需要更改整个条目中的一个即可app.config。(我知道我可以管理代码中的所有串联,但是我更喜欢这种方式)。


阅读 277

收藏
2020-05-19

共1个答案

一尘不染

好问题。

我认为没有。我相信,如果有一种简单的方法,这将是众所周知的,并且我看到Microsoft正在Visual Studio
2010中创建一种机制,用于部署不同的配置文件以进行部署和测试。

话虽如此;我发现您在本ConnectionStrings节中有一种占位符,称为“ | DataDirectory
|”。也许您可以看看那里的工作情况…

这是machine.config展示它的一部分:

 <connectionStrings>
    <add
        name="LocalSqlServer"
        connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
        providerName="System.Data.SqlClient"
    />
 </connectionStrings>
2020-05-19