0

ASP.NETのディレクトリ内のファイルの名前を読み取るのはどのくらい効率的ですか?

背景:Webサーバー上の画像を自動的に更新し、事前に展開したい。たとえば、4月1日まで「image1.png」を選択します。1.4月の「image2.png」の後。これを実現するには、すべての画像名を、この画像を選択する必要があるかどうかを示す日付にマップする必要があります。

別のファイルまたはデータベース内のファイル名と日付の間のマッピングを回避するために、ファイル名に日付を入れるというアイデアがあります。ディレクトリを繰り返し、日付を解析すると、ファイルが見つかります。

例えば:

  • image_2013-01-01.png
  • image_2013-04-31.png

2番目の画像は、後の日付の画像がドロップされない場合、5月から永遠に選択されます。

したがって、このソリューションが20未満のファイルを想定したWebサイトの速度にどのように影響するのか疑問に思います。

4

1 に答える 1

1

のようなものを使用している場合Directory.GetFiles、それはOSへの1回の呼び出しです。
これにより、ディスクにアクセスしてリストを取得します。

20未満のファイルの場合、これは非常に高速になります。ただし、このデータは頻繁に変更される可能性は低いため、画像の名前をキャッシュすることを検討してください。

これをアプリケーションコンテキストに保存して、サイトのすべてのユーザー間で共有できます。

于 2013-03-26T08:07:42.000 に答える