そうです、私にはWindowsサービスがあり、数分ごとにサーバー上でいくつかの作業を実行します。このサービスは、接続先のサーバーに関する多くの情報(ホスト、ユーザー名、ポートなど)をApp.configから読み取り、非常にうまく機能します。
現在、サービスがn個の異なるサーバーに対応しているという要件があります。したがって、私のサービスはApp.configから読み取り、server1..serverNに対して必要な処理を順番に実行する必要があります。所定の時間待ってから、server1から再開します。
nセットのサーバー設定をApp.configに保存し、プログラムで設定のセットがいくつあるかを判断して、各セットを読み取る方法や方法がわかりません。
サーバーが5つあることを示す設定をしてから、server1..server5の設定をすることを考えましたが、それは実際にはエレガントではありません。
これを行うためのより良い方法はありますか?
私の完全なソースファイルは以下のとおりです。
using System;
using System.Collections;
using System.Text;
using System.Configuration;
using System.Xml;
namespace FTPConfig
{
public class MyAppConfig : ConfigurationSection
{
public static MyAppConfig GetConfiguration()
{
MyAppConfig configuration = ConfigurationManager.GetSection("MainSettings") as MyAppConfig;
if (configuration != null) return configuration;
return new MyAppConfig();
}
}
[ConfigurationProperty("host", IsRequired = true)]
public String Host
{
get
{
return this["host"] as string;
}
}
}