私は、ユーザーのマシン上の一連のファイルがアプリケーションによって以前に処理されたかどうかを比較的迅速に判断する必要があります。問題のアプリはそのユーザーのファイルをサーバーにアップロードし、以前にファイルがアップロードされていればアップロードをスキップします。これまでの私の計画では、ファイルをハッシュして、結果をサーバーにアップロードされた方法の識別子とともに格納していました。私が考えている問題は、このデータを格納することは、ハッシュの長さのために非常に面倒になる可能性があるということです。私は約30-40のファイルを期待していますが、それは倍増する(または仮説的に)三倍さえすることができます。C#で一連のファイルが同一であるかどうかを素早く判断できますか?
これは、辞書を使用して、ハッシュをキーとして、サーバー情報を値として保存することは可能でしょうか?その後、そのDictionaryをAppのProperties.Settings.Defaultオブジェクトに格納します。そのシステムに保存することは可能か、それとも問題が発生しますか?アプリケーションの性質上、にはという2人のユーザーが同じデータセットを持つ可能性があるので、ユーザー間のアップロードを比較する必要はありません。さらに、このタイプの操作にはどのようなパフォーマンスが必要ですか?ユーザーにはPentium-M 1.5 GHz以上のRAMと1 GBのRAMが必要です。
私は実際にapp.configファイルではなくuser.configファイルに格納しようとしていました。あなたのポイントは良いものですが、私はそれを別にしておきます。 user.configファイルをバルーンにする必要はありません!ディクショナリについては、それが格納できるサイズのキーに長さがあるかどうか疑問に思っていましたか?もし私がちょうどハッシュを連結するなら、それはうまくいくのだろうか?そしてパフォーマンスのために、私はファイルのハッシュについて心配しています。これらのユーザーが妥当な期間にこれを行うことができるでしょうか? – jasonh
ハッシュの連結を開始する必要はありません。各ハッシュはかなり短く、辞書は長いキーにも対処できます。そして、はい、ノートパソコンはハッシュのために絶対にうまくいくはずです - ほとんどのハッシュは比較的計算上安いです。ファイルを読むだけで時間がかかります。 –
私は重要な情報が欠けていたと思う。ファイルは1つのセットとしてまとめられているので、ファイルごとに1つの辞書エントリを作成するのは実際には意味がありません。 – jasonh