12

私にはほとんど変更されないエンティティがいくつかあります(つまり、国、地域などのリスト)そしてそれは私に考えさせられました...静的リポジトリは通常のリポジトリに加えてこれらのエンティティにとって意味がありますか?さらに、これらのエンティティは引き続き他のエンティティと相互作用し、同じコンテキストを共有するように単一の作業単位の下でそれらを必要とするためです。

しかし、私はそれを回避するためのより良い方法があると確信しています。ASP.NETと.NETFrameworkは初めてですが、プログラムの存続期間を通じて使用されるアプリケーション全体のデータを定義する方法はありますか?それはそれについて行くための最良の方法ですか?

または、これらのエンティティのコレクションを使用して静的クラスを定義する方が適切であり、必要なときにそこからこれらを取得できますか?

4

3 に答える 3

8

さまざまな保存 (状態管理) 手法を使用できます。詳細については、以下のオプションに従ってください。

その音から、保存しようとしている 2 つのエンティティはメモリを集中的に使用しないため、ここではアプリケーション キャッシュが最適です。

于 2012-12-18T15:15:28.737 に答える
3

キャッシングメカニズムを使用しないのはなぜですか?私はこのような状況でmemchacheをうまく使用しました。

于 2012-12-18T14:56:18.017 に答える
2

Nexus23 の回答は、選択肢の大部分をカバーしていると思います。しかし、このような一部のデータ (米国の州、都市) については、将来対処する必要があるため、リストをまったく維持しない方がよい場合もあります。ユーザビリティと同様に 190 か国以上のリスト (国連と米国は異なるリストを認識しています) を持つことは、ユーザーがスクロールするのに理想的ではありません。

アプリケーションのユーザーは、世界の地政学的変化に合わせて更新する予定がない限り、あなたよりも正しいことを知っている可能性が最も高いでしょう。

住所の検証や位置情報などの機能のためにこのリストが必要な場合は、内部で再ロールするのではなく、そのためのサービス (Google Maps API など) を使用することをお勧めします。

于 2012-12-18T15:35:41.433 に答える