問題タブ [applicationsettingsbase]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - バージョン番号が変更されたときに、user.configのすべての設定をどのようにアップグレードしますか?
ApplicationSettingsBaseから継承するオブジェクトによってuser.configに保存されている多くのユーザースコープ設定があります。
各インスタンスのSettingsKeyは、主にフォーム名を使用して実行時に動的に導出されます。したがって、数百になる可能性があります。
私は多くの質問と回答を読みました(これのように-.netのさまざまなアセンブリバージョン間でuser.config設定をどのように保持しますか? )これらはすべて、バージョン番号チェックでApplicationSettingsBase.Upgrade()呼び出しをラップすることを推奨しています。
問題は、(私が知る限り)すべてのApplicationSettingsBaseオブジェクトをインスタンス化してupgradeメソッドを呼び出すために使用されるすべての* SettingsKey(値を知る必要があることです。
すべてのuser.config設定を一度にアップグレードする方法はありますか、またはファイル内のすべての設定を繰り返してアップグレードする方法はありますか?
c# - 複数の .settings ファイルを読み込んで C#/XNA .Net のメソッドに渡す方法
プレーヤー設定として使用している複数の設定ファイルを読み取ろうとしています。C# と XNA
それらはすべてまったく同じ設定です。AKA Settings1 には player1 の Name、ShipType、Weapon、Shield、Color などがあります... (約 100 のこと) Settings2 には player2 の情報、プレイヤー 1 と同じように設定があります。AkA Settings1.settings Settings2.settings など...
私はこれを使用していますVS のすべてのものを簡単に参照できるので、クリックして追加するだけで、型やすべての良いものを見つけ出すことができます。
これが私がやりたいことです
でも。このセットアップを使用すると、playerSettings[0] では Name プロパティにアクセスできません。
デバッグに入ると、PlayerSettings[0] に Settings1 が含まれており、その中に Name プロパティがあることがわかります。VSでアクセスする方法がわからないので、読み込むことができます。
system.configureation.applicationsettingsbase[] を使用できるようにして、メソッドに渡すだけでコードを 1 回だけ更新できるようにしたいと考えていました。プレイヤーごとに手動で行うのではなく (現在は 4 回で、非常に長い)
繰り返しますが、これらは、右クリックして add-new-settings を選択してプロジェクトに追加できるデフォルトの設定ファイルである必要があります。
TLDR: .settings ファイルでいっぱいの System.Configuration.ApplicationSettingsBase の配列内のプロパティにアクセスする方法が必要です。または、異なるタイプとして認識されている場合でも、それぞれの異なる .settings ファイルをメソッドに渡します ありがとう
c# - ユーザー スコープ設定の保存 (ApplicationSettingsBase)
ユーザーが構成フォーム (メインフォームではない) を終了したときに、アプリケーション設定を保存しようとしています。フォームを再度開くと、設定したデータがまだそこにあるため、設定はメモリに保持されますが、ディスクには保存されません。これは、xml ファイルを保存するファイルパスです。
C:\Users\david_000\AppData\Local[会社名][プロジェクト名]\1.0.0.0.
ApplicationSettingsBase ファイルを実装するクラスで [UserScopedSetting()] を使用しているため、呼び出し時に保存する必要があります。
これは ApplicationSettingsBase を使用する私のクラスです
私の BindingList には複数のプロパティが含まれており、そのクラスは [Serializable] 属性を使用しています。しかし、xml ファイルを保存すると、保存されるのは次のとおりです。
これに関するアドバイスは大歓迎です。
c# - 文字列から Properties.Settings.Default を読み込む
アプリケーションの設定を保持するためにを使用し始めましたProperties.Settings.Default
が、要件が変更されたため、これらの設定をディスク上のファイルではなく SQL データベースに保持する必要があります。xml を文字列にロードし、その文字列から何らかの方法で設定を初期化する必要があります。
Properties.Settings.Default
関連するすべてのコードを破棄して別のクラスを使用する必要はありません。void Properties.Settings.Default.LoadSettingsXmlFromString(string xml)
、 のようなものが必要ですstring Properties.Settings.Default.SaveSettingsToString()
。次に、文字列の保存と読み込みを自分で処理します。
頭に浮かぶ簡単な解決策の 1 つは、サーバーから設定を取得し、Properties.Settings.Default
ロードするファイルを上書きして、同様に保存することです。
Loading Properties.Settings from a different file at runtimeも見つかりましたが、ディスク上のファイルから設定をまったくロードしていないため、私の問題は少し異なります。
編集:.NETユーザー設定の場所を変更する方法によると、ファイルの場所を取得しているように見えるので、上書きするのは簡単ではありません