1

Visual Studio を使用して C# を学習していますが、いくつかの問題が発生しています。

Windowsフォームアプリケーションを開発しています。このアプリケーションは、ユーザーの実行統計を追跡することを目的としています。

設定では、実行する日数を選択し、毎日のワークアウトを追加します (例: 1: 100m のスプリント 2: 50m のスプリント 3: 1 マイルの実行)。

次に、メイン ウィンドウ フォームで、ユーザーは自分の時間を追加して保存することができます。一方、時間のグラフが投影されます。これにより、ユーザーは進捗状況を追跡できます。

私の質問は、時間をどこに保存すればよいですか? 現在、すべての設定を settings.settings doc に保存しています。時間については、設定ファイルまたは何らかの SQL データベースを使用する必要がありますか?

4

2 に答える 2

1

「ユーザーの実行統計」とは何か、またそれがどのように使用されているかについて、さらに多くの情報がなければ、回答することはできません。ただし、いくつかの一般的なガイドラインを示すことはできます。

System.Configuration.ApplicationSettings特定のユーザー向けにアプリケーションをカスタマイズするために設計されています。たとえば、ユーザーがアプリケーションで使用する言語、ウィンドウを表示する場所、デフォルト値などです。設定はアプリケーションの一部です。アプリケーションのインストール時に作成され、アプリケーションのアンインストール時に削除されます。複数のユーザーがアプリケーションを実行する場合、通常はそれぞれが独自の設定を取得します。通常、アプリケーションを作成するときに設定を定義し、ユーザーがそれらを追加または削除することはありません。

データベースは、ユーザー データを永続化するために使用されます。通常、これらは特定のユーザーまたはアプリケーションに関連付けられていません。ユーザーが追加したデータは、他のユーザーまたはアプリケーションが使用できます。通常、アプリケーションはすべてのユーザー データと共にインストールされるわけではなく、アプリケーションのアンインストール時にユーザー データが削除されるわけでもありません。

SQL データベースはリレーショナル データに使用されます。「すべてのユーザーは正確に 1 つのアドレスを持っている必要がある」、または「どのユーザーも 0 個以上の電話番号を持っている可能性がある」などの内部構造を持つデータ。データがリレーショナルでない場合、リレーショナル データベースは必要ありません。

これらは一般的なガイドラインであり、特定のアプリケーションは特定の目的のために異なる動作をする場合があります。アプリケーションについて詳しく教えていただければ、より具体的な情報を提供できます。

于 2013-02-13T18:52:30.817 に答える
1

SqlCESQLite、またはその他の単純なインプロセス データベースは、設定ファイルよりも優れています。

設定は、すべてのユーザー入力とともに拡大することを意図したものではありません。これはデータベースのタスクであり、SQL.

コメントで質問に答える:

ユーザー データユーザー設定には違いがあります。あなたのアプリで何が何であるかを決定する必要があります。

ユーザー設定に関するすべての設定ファイルを使用します。フォームのレイアウト、色、音、ウィンドウのサイズなど。

設定管理フレームワークは非常に洗練されているため、ユーザー設定のテーブルを設計し、そのテーブルへのアクセスを開発する時間を節約できます。

設定ファイルのもう 1 つの明るい面は、テキスト エディターで手動で編集できることです。

于 2013-02-13T18:32:51.497 に答える