在C#中存储全局变量(如路径)的位置

本文关键字:路径 位置 存储 全局变量 | 更新日期: 2023-09-27 18:21:00

我是C#的新手,仍在为某些事情寻找最佳实践。

我想知道我可以在哪里存储设置,如路径(例如,文件上传)和其他各种变量,以便在项目中的任何地方都可以访问它们。

我应该只创建一个带有静态变量的类,还是有更好的方法来存储这些设置?

在C#中存储全局变量(如路径)的位置

您最好将其保存在web.config中,因为编译后可以更改。

appSettings元素是为这种功能保留的。您甚至可以将这一部分拆分到一个不同的文件中,以便在您的特定配置中完全清楚这一点。

仅示例web.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="DocumentDirectory" value="~/Documents" />
    </appSettings>
</configuration>

或者:

web.config:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings file="appSettings.xml" />
</configuration>

和一个单独的appSettings.xml:

<?xml version="1.0" encoding="utf-8" ?>
<appSettings>
    <add key="DocumentDirectory" value="~/Documents" />
</appSettings>

你可以这样阅读这些设置:

using System.Configuration;
using System.Web.Configuration;
Configuration config = WebConfigurationManager.OpenWebConfiguration(null);
if (config.AppSettings.Settings.Count > 0)
{
    KeyValueConfigurationElement customSetting = config.AppSettings.Settings["DocumentDirectory"];
    if (customSetting != null)
    {
        string directory = customSetting.Value;
    }
}