9

AppConfigにいくつかのプロパティが保存されているので、それらに動的にアクセスしたいと思います(ループや関数など)。

MySettings.NAME_OF_THAT_THINGを使用して値にアクセスすることは問題ありませんが、名前が可変の場合はどうなりますか?

私は試した:

String propertyValue = MySettings.GetType().GetProperty("NAME_OF_THAT_THING").ToString();

しかし、私が取り戻したのは、物件の名前だけです。これどうやってするの?

4

4 に答える 4

9

あなたがする必要があるのは:

String propertyValue = Settings.Default["NAME_OF_THAT_THING"].ToString();

リフレクションを使用することは明らかに機能しますが、それはやり過ぎです。

于 2012-06-12T12:57:33.887 に答える
8
String propertyValue = MySettings.GetType()
.GetProperty("NAME_OF_THAT_THING")
.GetValue(MySettings, null); //replace MySettings with null in GetValue(...) if MySettings is  a static class
于 2012-06-12T12:50:46.880 に答える
0

ConfigurationManager.AppSettingsプロパティを使用してみましたか?次のコードを使用して設定を取得できるはずです。

String propertyValue = ConfigurationManager.AppSettings["NAME_OF_THAT_THING"];

ConfigurationManager.AppSettingsのMSDN記事には、AppSettingsのすべてのエントリを名前ではなくインデックスでループする例も含まれています。

于 2012-06-12T12:53:46.257 に答える
0

元のポスターの質問への回答は次のようになります。MySettings[NAME_OF_THAT_THINGmysettings]は前の投稿と同じように機能します

ただし、Windowsアプリの組み込み設定を使用するための回答を探している人は、myAppDefaultNameSpace.Properties.Settings.Default[NAME_OF_THAT_THINGmysettings]を使用することをお勧めします。

于 2014-08-11T22:56:00.073 に答える