4

実行時にアプリケーション設定APIを使用して、オブジェクトの動的なキーと値のペアをapp.configに保存するにはどうすればよいですか?

私は頭を動かそうとしてきましたが、意味のある例やドキュメントが見つかりません。

.NetディクショナリクラスをXMLでシリアル化してapp.configに格納することはできないようです。

カスタムXMLシリアル化クラスを使用してそれを行う唯一の方法ですか、それとも他の方法がありますか?

4

5 に答える 5

3

あなたはこのようなことをすることができるはずです:

// Open App.Config of executable
System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

// Add an Application Setting with a name Key and a Value stored in variable called Value
config.AppSettings.Settings.Add("Key", Value );

// Save the changes in App.config file.
config.Save(ConfigurationSaveMode.Modified);
于 2008-10-07T15:47:59.550 に答える
2

ネットをさらに検索した後、.Net構成モデルについて詳しく説明している非常に優れた(非常に長いですが)記事を見つけました。

.NET 2.0 構成の謎を解き明かす

また、非常に便利なものを見つけました:

構成セクション デザイナー

構成セクションを視覚的に設計し、対応する XSD ファイルを生成するために追加するビジュアル スタジオ。誰かがこれが役立つことを願っています。

于 2008-10-08T09:51:00.113 に答える
1

実行時に app.config を変更するのは悪い習慣だと考えられていました。app.config は、プログラムのセットアップと構成に使用する必要があります。アプリケーションが実際に変更している動的なものではありません。

動的オブジェクト用に別の「KeyValue.xml」ファイルを作成することをお勧めします。

于 2008-10-07T16:48:43.157 に答える
0

必要なものに応じて、System.Collections.ObjectModel.KeyedCollection<TKey, TValue> を試すことができます。これは、アイテム自体からアイテムのキーを導出できる場合にのみ機能しますが、その場合、この目的には問題ありません。

于 2008-10-07T15:41:38.020 に答える
0

一般的な辞書ですか?もしそうなら:

XML シリアライズ可能なジェネリック ディクショナリ

于 2008-10-07T15:41:49.860 に答える