私のアプリケーション(C#)には、ログに出力されたり、ユーザーに提示されるconstメッセージがたくさんあります。 このconstメッセージは、それらを外部のファイルやDBに置くことはありません。 私のソリューションは非常に簡単です - 私は静的クラスを作成し、それをConstMessagesと命名することを考えています。このクラスは、アプリケーション内のどこからでもアクセスできる多くの公開const文字列変数を保持します。 その方法に何か問題があった場合や、より良い方法がある場合はお勧めできますか? ありがとう!コード内にアプリケーションのconst文字列を格納するためのベストプラクティス
答えて
私は、バージョンの問題を乗り越えるために、constの代わりにreadonlyを使用します。
constを使用したバージョン管理の問題?どうして? – Alxandr
Constはコンパイル時ですが、readonlyは実行時です。詳細はこちらhttp://www.shrinkrays.net/code-snippets/csharp/const-vs-readonly-in-csharp.aspx – anivas
@Alxandr:コード内の複数の場所で再利用されるアセンブリで定数を使用する場合値がコンパイラによってハードコードされるため、アセンブリを使用するすべてのクライアントコードを再コンパイルする必要があります。読み取り専用の値では、実行時に値が解決されます。新しいバージョンのアセンブリをプラグインするだけで、クライアントコードは新しい値を使用します。この本には、この本の中で良い章があります:http://www.amazon.com/Effective-Covers-4-0-Specific-Development/dp/0321658701/ref=sr_1_1?ie=UTF8&qid=1309707290&sr=8-1 (第1章:項目2:constを読むことをお勧めします) –
これは通常、単純なアプリケーションでは問題ありません。アプリケーションがローカライズ/複数の言語をサポートする必要がある可能性があると思われる場合は、別のオプションとしてRESXファイルがあります。
- 1. AVL木のためのCの文字列を格納する
- 2. ループ内の配列に文字列値を格納する
- 3. 2次元配列内の文字列(文字*)を格納
- 4. ダイナミック2D配列内に文字列リテラルを格納するC
- 5. Hibernateを使用してJ2EEアプリケーションにグローバルデータを格納するためのベストプラクティス
- 6. 文字列をレジスタに格納する
- 7. ローカルストレージに文字列を格納する
- 8. 各文字の数をPHPの文字列に格納する
- 9. 文字列の一部を格納するためにSqlDataSourceをカスタマイズする
- 10. Lucene.NETに文字列のリストを格納
- 11. SuspensionManager.SessionStateに文字列以外の文字を格納する
- 12. XMLファイルの文字列フィールドに格納されたコードを実行する
- 13. VBA:Excelの列をコピーする:セル参照を格納するためのベストプラクティス?
- 14. JSONレスポンスを文字列に格納し、その文字列をローカルに格納する方法ios objective c
- 15. Jasmin ByteCode文字列を格納する
- 16. 文字列を格納するSQL
- 17. 文字列に格納されたJson配列を1つにまとめる
- 18. データ(文字列)をデータベースに格納
- 19. char *ベクトルにC++文字列を格納
- 20. C++ EnumWindows、リストを文字列に格納
- 21. ある文字列の文字を配列に格納する方法は?
- 22. マルチプロセッシングのsharedctypes配列に文字列を格納する
- 23. テキストファイルを文字列以外の配列に格納する
- 24. 文字列に格納された文字 - ランダム化されたときに別の文字列変数に格納する方法
- 25. 文字列の文字列の格納場所
- 26. MVCの文字列定数格納先
- 27. sqliteの文字列格納サイズ
- 28. 文字列に格納されたユニバーサル文字(html)を印刷するC++
- 29. Matlabの配列に数字で分割した後に文字列を格納
- 30. WinFormsアプリケーションに接続文字列を安全に格納する方法は?
推奨されないソリューションを探しています。これらのメッセージを保存するには外部ファイル(設定ファイル '.app'や' .config'など)を使わなければなりません。 –
なぜこれらの文字列が変更されない場合、それらを1つのクラスに入れますか?あなたのためにいくつかの変更を期待しているようです。 –