私の Web アプリケーションには、インスタンスがイメージ (写真など) を必要とするクラスがいくつかあります。これらの各インスタンスは、1 つのイメージのみを持つことができます。現在、私の実装では、ユーザーが新しいインスタンスを作成するときに、アップロードされたファイルの名前をそのままにして、関連付けられたテーブルの ImageUrl フィールドに記録します。
これは不要な気がします。関連付けられたインスタンスの一意の URL を使用して画像の名前を変更するだけで、それに応じてプログラミング ロジックを実装できます。たとえば、ユーザーの ID が 145 の場合、profilephoto_145 という名前で記録できます。後でユーザーの写真を表示する必要がある場合、必要なのはユーザーの ID だけです。ユーザーが新しいファイルをアップロードした場合、既存のファイルを同じ名前で上書きできます。
各インスタンスに 1 つの関連付けられたイメージがあり、以前のファイルを追跡する必要がないと仮定すると、これは理にかなっているのだろうか。これに対する一般的なアプローチは何ですか?各画像のフル パスを保持し、元の名前を保持する必要がありますか、または ID を使用してこの名前変更ファイルを実装する必要がありますか?