問題タブ [application-settings]
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# - ユーザー設定が保存されない (Settings.Default.Save();)
プロジェクトのプロパティで、このような設定を作成しました
列は、名前、タイプ、スコープ、および値です。
次に、ユーザーが「NumberOfUsers」を設定できる ComboBox があります。このコンボには SelectedIndexChanged イベントがあり、ユーザーがコンボの値を変更するたびに変更を保存します。コードは次のとおりです。
このコンボを含むフォームは、親から呼び出されfrm.ShowDialog();
、子フォームのコンストラクターで、設定エントリに基づいてコンボの選択されたインデックスを設定しようとします
ただし、これは機能しません。つまり、コンボは設定から値を取得せず、選択されたインデックスとしてデフォルトで 0 になります。
誰が私がどこを間違えているか知っていますか?
.net-4.0 - 4.0 の Properties.Settings に一般的な辞書を保存できますか?
Dictionary<Tkey,TValue>
.net 4.0の新機能はシリアル化可能であるため、これをSettings.Settings
orで何とか使用できSettings.Designer.cs
ますか?
c# - ApplicationSettingsBaseのFileNotFoundException
アプリケーションをデバッグするとき、Visual Studioで例外の中断が有効になっていると、常に次のエラーが発生します。例外でbreakを使用しているので、これは本当に私を悩ませています。面白いのは、続行しても機能することです(StringCollectionがロードされます)。
メッセージは次のとおりです。
ファイルまたはアセンブリ'System.XmlSerializers、Version = 4.0.0.0、Culture = neutral、PublicKeyToken=b77a5c561934e089'またはその依存関係の1つを読み込めませんでした。システムは、指定されたファイルを見つけることができません。
例外の原因となっているコードは次のとおりです(デザイナーが生成)
エラーを表示する空のテストアプリケーションを作成しようとしましたが、例外は発生しませんでした。私たちのプロジェクトは巨大なので、原因を見つけるのは難しいです。たぶん、このサイトの誰かがこれを解決する方法の手がかりを持っています。
c# - .NET ApplicationSettingsBaseロードするたびにUpgrade()を呼び出す必要がありますか?
から派生したアプリケーション設定がありますApplicationSettingsBase
。アプリの新しいバージョンをプッシュするときは、次のように呼び出す必要があります。
(メタデータから)
この投稿のように、設定をアップグレードする必要があるかどうかを判断するためのトリッキーな方法がいくつかあります。これは、設定を1回だけアップグレードするように思えます。これで、アプリケーションの現在のバージョンを設定に保存し、設定をインスタンス化するたびに比較できます。現在のバージョンと異なる場合は、アップグレードできます。
Upgrade()
私の質問は、設定をインスタンス化するたびに電話をかけないのはなぜですか?そうすれば、私は決して時代遅れになることはないでしょう。
c# - .Net アプリケーションの設定
私が管理するファイルに設定されていない設定を更新するようにアプリケーション設定を実装したいと考えています。これまでのところ、次のものがあります。
設定には、nameValueCollection 型の valuesforcomparison という名前の変数があり、スコープはユーザーです。次のようにすると、次回ユーザーがプログラムを実行したときに変数は更新されません。
iphone - アプリ内設定ページの作成(iPhone)
設定ページが必要なアプリを作成しています。どちらが別のクラスになるので、あるクラスから別のクラスにデータを渡すにはどうすればよいですか? 例: 設定ページに UISwitch があり、ユーザーが別のクラスで選択したオプションを確認する必要があります。
ありがとう。
c# - 同じアセンブリ内のカスタムクラスをアプリケーション設定に保存するにはどうすればよいですか?
とてもシンプルなクラスです
このクラスを別のアセンブリに配置すると、タイプを参照すると[設定]タブに表示されます。ただし、このクラスを実行中のプログラムと同じアセンブリに配置すると、表示も参照もできません。何が起きてる?
iphone - NSUserDefaultsの初期設定
だから私はこれを読んでいました:iPhoneアプリケーションの設定をアプリに保存するのは簡単そうです。
しかし、どこで/どのように初期設定を定義しますか?
たとえば、国の設定があります:英国または米国。アプリを最初にインストール/開いたときに、NSUserDefaultsをUKに自動的に認識/設定してほしい。
これがはっきりしていることを願っています。
トム
c# - アプリケーション設定 + DirectoryInfo/FileInfo
私はまだ C# を使い始めたばかりです... WPF アプリケーションを作成していて、いくつかのユーザー アプリケーション設定を適用しようとしています。標準のアプリ設定 (int、double、string など) を簡単に挿入できます。WindowState のようなものが挿入されています。
Strings の代わりに、DirectoryInfo や FileInfo を保存可能な設定として使用したいと考えています。
選択された型: System.IO.File は、「抽象型はサポートされていません」というエラー メッセージを表示します。
抽象型を設定としてどのように実装できるので、これは理にかなっています。
選択されたタイプ: System.IO.FileInfo は、「タイプ 'System.IO.FileInfo' が定義されていません。」というエラー メッセージを表示します。
DirectoryInfo/FileInfo はアプリの設定として設定できませんか? 出来ますか?時間の価値はありますか?設定として使用できるものとそうでないものをどのように判断できますか?
ユーザー設定に関する私の経験は限られており、知識を広げようとしていますが、これには困惑しています。
編集: スクリーンショットをいくつか投稿しようとしましたが、どうやら新人すぎるようです。私はVisual Studioのアプリケーション設定で作業しています。
さらに注意:
http://msdn.microsoft.com/en-us/library/a65txexh.aspx
アプリケーション設定は、XML シリアライズ可能なデータ型、または ToString/FromString を実装する TypeConverter を持つ任意のデータ型として格納できます。最も一般的な型は String、Integer、および Boolean ですが、値を Color、Object、または接続文字列として格納することもできます。
ToString() があるので、何か不足していますか...
c# - 依存性注入と AppSettings
アプリケーションのブラウザ実装クラスを定義しているとしましょう:
executablePath
これは、データがそれを使用するコードの近くにあるため、一見すると良いアイデアのように見えるかもしれません。
問題は、外国語の OSexecutablePath
を搭載した別のコンピューターでこの同じアプリケーションを実行しようとしたときに発生します。値が異なります。
AppSettings シングルトン クラス (またはそれに相当するもの) を使用してこれを解決できますが、私のクラスが実際にこの AppSettings クラスに依存していることを誰も知りません (これは DI アイデアに反します)。単体テストにも問題が生じる可能性があります。
executablePath
コンストラクターを介して渡されることで、両方の問題を解決できました。
しかし、これは私のComposition Root
(必要なすべてのクラスの配線を行うスタートアップメソッド)で問題を引き起こします.
これは簡単に大きな混乱になります。
代わりにフォームのインターフェースを渡すことで、この問題を回避できます
何らかの設定が必要なすべてのクラスに。次に、これを、すべての設定が埋め込まれた通常のクラスとして実装するか、XML ファイルからデータを読み取るクラスとして実装します。これを行う場合、システム全体の一般的な AppSettings クラス インスタンスを用意する必要がありますか?それとも、AppSettings クラスを必要とする各クラスに関連付ける必要がありますか? それは確かに少しやり過ぎのようです。また、すべてのアプリケーション設定を同じ場所に置くことで、プログラムを別のプラットフォームに移行しようとするときに必要なすべての変更を簡単に確認できます。
この一般的な状況にアプローチする最善の方法は何でしょうか?
編集:
またIAppSettings
、すべての設定がハードコードされた を使用する場合はどうでしょうか。
これにより、コンパイル時の型安全性が可能になります。インターフェイス/具象クラスが大きくなりすぎた場合は、フォームの他の小さなインターフェイスを作成できますIMyClassXAppSettings
。中規模/大規模プロジェクトでは負担が大きすぎますか?
また、AOP と、分野横断的な懸念に対処するその利点についても読んだことがあります (これはその 1 つだと思います)。この問題の解決策も提供できませんでしたか? たぶん、次のような変数のタグ付け:
次に、プロジェクトをコンパイルするときに、コンパイル時の安全性も確保します (データを織り込むコードを実際に実装したことをコンパイラーにチェックさせます)。もちろん、これにより、API がこの特定のアスペクトに結び付けられます。