c#循环遍历app.config,但只使用"service"键

本文关键字:quot service 遍历 循环 app config | 更新日期: 2023-09-27 18:07:37

我正在循环通过一个txt文件,目前获得服务器名称,并检查一个特定的服务状态,并启动它,如果停止。这可以完美地与存储在app.config中的服务名称配合使用。我还需要存储文件路径,文件名,超时,以及我想要放入app.config中的任何其他键。我的问题是,当我循环通过app.config目前我只有完美的服务名称。如果我添加我想要添加的其他键,我显然会得到"Service Not Found"。如何只选择"类似"服务"的键?我将键命名为"service1"、"2"、"3"等。

foreach (string key in ConfigurationManager.AppSettings)
{
    string value = ConfigurationManager.AppSettings[key];
    // Create an instance of StreamReader to read from a file.
    // The using statement also closes the StreamReader.
    using (StreamReader sr = new StreamReader(txtFilePath + txtFile))
    {
        String line;
        // Read and display lines from the file until the end
        // of the file is reached.
        while ((line = sr.ReadLine()) != null)
        {
            Console.WriteLine(line);
            // Check for lines with semi-colon. If semi-colon at
            // line start skip it
            if (line.StartsWith(";"))
            {
                continue;
            }
            else
            {
                ServiceController sc = new ServiceController(value, line);
                //Create new timeout module.
                TimeSpan timeout = new TimeSpan();
                //Write current service status to console.
                Console.WriteLine(
                    "The " + value + " service status is currently set to {0}",
                    sc.Status.ToString()
                );

c#循环遍历app.config,但只使用"service"键

你应该移动到一个带有你使用AppSetting集合定义的VS元素的命名配置部分。

我会遵循这里关于如何在配置文件中创建自定义节的建议,然后您不再按键查找项,而是按节查找项。