服务器.net项目配置文件,存储配置文件中的自定义信息 - C# | Microsoft Docs

使用 Visual C# 存储和检索应用程序配置文件中的自定义信息

04/28/2020

本文内容

本文介绍了如何存储配置文件中的自定义信息,该文件稍后可在运行时由与其关联的应用程序检索。 当您必须定义与应用程序关联的数据时,这非常有用。

原始产品版本:   Visual C#

原始 KB 编号:   815786

要求

以下列表概述了您所需的推荐硬件和软件:

Microsoft Windows

Visual C#

本文假定您熟悉下列主题:

可扩展标记语言 (XML)

.NET 配置文件

创建读取配置文件的控制台应用程序

可以将应用程序设置存储在与应用程序关联的配置文件中。 配置文件以 XML 格式保存。

.NET Framework 中的和命名空间包括必要的类,以在运行时从 System.Configuration System.Collections.Specialized .NET 应用程序配置文件检索信息。

若要创建在运行时读取关联配置文件内容的控制台应用程序,请按照以下步骤操作:

启动 Visual Studio .NET 或 Visual Studio。

在"文件"菜单上,指向 "新建",然后选择"项目"。

选择 "项目类型 " 下的 Visual C# ,然后选择" 模板"下的 控制台 应用程序。 将项目 命名为 ConConfig。 默认情况下,Visual C# 创建一个名为 Program 的 类。

备注

在 Visual Studio .NET 中,选择"项目类型"下的 Visual C# 项目,然后选择"模板"下的 控制台 应用程序。 将项目 命名为 ConConfig。 默认情况下,Visual C# 创建一个名为 Class1 的类。

确保"解决方案 资源管理器" 窗口可见。 如果看不到,请按 Ctrl+Alt+L 组合键。

在 解决方案资源管理器 中,右键单击项目 名称,选择"添加",然后选择 "新项目"。

在" 添加新项"列表中 ,选择 XML 文件。

在 "名称"文本框中 ,App.config, 然后选择"添加 "。

可以使用应用程序配置文件来收集以键/值格式保存的自定义应用程序设置。 可以在 关联的配置文件 部分包含元素。 每个键/值对都有一 个元素。 元素 具有以下格式:

将包含 元素 的节添加到与标记之间的 配置文件。

例如,以下配置文件包含一 个指定三个键/值对的部分:

在 解决方案资源管理器中,双击 Program.cs显示代码窗口。 将以下语句添加到代码模块。

备注

这些语句必须出现在文件中任何其他语句之前。

using System.Configuration;

using System.Collections.Specialized;

按照以下步骤添加 System.Configuration.dll 引用:

在"项目" 菜单上,选择"添加引用"。

在 "添加引用 "对话框中,选择 .NET 选项卡。

查找并选择组件名称 System.Configuration 。

选择 "确定"。

若要保留配置文件部分中的配置文件密钥中的值,请在此部分中声明一个字符串 Main 变量,如下所示:

string sAttr;

若要从配置文件部分检索指定键的值,请使用类 Get AppSettings 的属性 ConfigurationManager 的方法。 该类 ConfigurationManager 位于 System.Configuration 命名空间中。 当该方法收到包含键的字符串输入参数时,应用程序将检索与该键 AppSettings.Get 关联的值。

以下代码从关联的配置文件 Key0 中检索属性的值。 然后,代码将此值设置在 sAttr 字符串变量中。 如果此值不存在键,则不存储任何项 sAttr 。

sAttr = ConfigurationManager.AppSettings.Get("Key0");

若要在控制台窗口中显示应用程序检索的值, Console.WriteLine 请使用以下命令:

Console.WriteLine("The value of Key0 is "+sAttr);

可以使用一个对属性的引用来 AppSettings 检索节内的所有键/值 对。 使用该属性 AppSettings 时,应用程序将返回所有关联的键/值对。 这些对存储在类型 NameValueCollection 中。 NameValueCollection包含应用程序检索的每个键的键/值条目。 该类 NameValueCollection 位于 System.Collections.Specialized 命名空间中。

NameValueCollection sAll ;

sAll = ConfigurationManager.AppSettings;

引用 AllKeys 字符串数组的属性,该数组具有应用程序检索的每个键 NameValueCollection 的条目。 使用 foreach 构造来在数组中进行访问,以访问应用程序检索到 AllKeys 的每个密钥。 每个键条目 AllKeys 都是一个字符串数据类型。

在 foreach 构造内,用于显示控制台窗口中的键及其 Console.WriteLine 关联值。 应用程序处理的当前键位于 s 中。 在 中使用它作为索引 sAllNameValueCollection 来获取其关联值。

foreach (string s in sAll.AllKeys)

Console.WriteLine("Key: "+ s + " Value: " + sAll.Get(s));

Console.ReadLine();

完整代码列表

using System;

using System.Configuration;

using System.Collections.Specialized;

namespace ConConfig

{

class Program

{

static void Main(string[] args)

{

string sAttr;

// Read a particular key from the config file

sAttr = ConfigurationManager.AppSettings.Get("Key0");

Console.WriteLine("The value of Key0: " + sAttr);

// Read all the keys from the config file

NameValueCollection sAll;

sAll = ConfigurationManager.AppSettings;

foreach (string s in sAll.AllKeys)

Console.WriteLine("Key: " + s + " Value: " + sAll.Get(s));

Console.ReadLine();

}

}

}

备注

此代码面向 .NET Framework 2.0。 如果使用的是 .NET Framework 1.0 或 .NET Framework 1.1,则类的所有 ConfigurationManager 实例更改为 ConfigurationSettings 。

完成配置文件列表 (ConConfig.exe.config)

验证它是否正常工作

按 F5 运行代码。 控制台窗口应显示关联配置文件部分中的键/值对, 如下所示:

The value of Key0: 0

Key: Key0 Value:0

Key: Key1 Value:1

Key: Key2 Value:2

排除故障

配置文件以 XML 格式保存。 确保遵循所有 XML 语法规则。 请记住,XML 区分大小写。 如果 XML 格式不正确,或者元素拼写错误,则会收到 System.Configuration.Configuration 异常。

例如,如果添加具有大写 K 而不是小写 k 的元素的键属性,或者如果节显示为带大写 A 的 (而不是小写 ) ,则会收到一条错误消息。

配置文件必须与其关联的应用程序保存在同一文件夹中。

您必须对配置文件名称使用以下语法:

..config

应用程序的名称在哪里。 是应用程序的类型,例如 .exe 。 并且 .config 是必需的后缀。

参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值