1

私のアプリケーションでは、ユーザーがデータを含むファイルを選択できるようにします。データが読み取られ、ユーザーがアプリケーションを閉じて再度開いたときに使用できるようになります。設定に値を保存できると思ったので、クラスを書きました:

public static class SettingsManager
    {
        public static string ComplexValidationsString
        {
            get { return (string)Properties.Settings.Default["ComplexValidations"]; }
            set { Properties.Settings.Default["ComplexValidations"] = value; }
        }

        //some more
    }

値を設定してアプリケーションを閉じると、値が失われました。値が保持されるようにする同様の方法はありますか? configファイルに書かれたデータを置き換えるコードを見たことがあるので、方法があると思います。

4

2 に答える 2

8

それは同じくらい簡単です

Properties.Settings.Default.Save();

static void Main()これをメソッドに入れることができます

于 2009-02-25T09:13:32.430 に答える
3

ybo の回答に加えて、.NET は、アプリケーションを起動した場所とそのバージョン番号の両方に関連するフォルダーに設定ファイルを保存することに注意してください。

これは、バージョン番号を更新する (または別の場所から実行する) と、新しい空の設定セットが取得されることを意味します。新しいバージョンを初めて実行するときに検出できるプロパティを追加し、以前の設定からのアップグレードを試みます。を使用して、古い設定を取得できます。

 Settings.Default.GetPreviousVersion("MyPropertyName");

SettingsPropertyNotFoundException以前のバージョン以降に新しいプロパティを追加した場合は、忘れずにキャッチする必要があります。

于 2009-02-25T10:32:13.320 に答える