現在、ユーザーが自分のプロフィールに画像を提供できるようにする方法をアプリに組み込んでいます。
アップロード プロセスの一環として、システム内のさまざまな場所で使用するために、いくつかの異なるバージョンのファイルを作成します。
意味がないので、画像をデータベースに保存するつもりはありません。それらは IIS によって提供されます。また、将来的に CDN への移行がはるかに簡単になるように構成したいと考えています。
私の現在の計画は、プロファイル情報の一部としてデータベースに保存される GUID または同様の一意の値を各ユーザーに割り当てることです。
ProfileId 1 - UserCode 628B3AF30B0F48EA8D61778084FC73C3
ユーザーがプロフィール画像 (またはその他のデータ) をアップロードすると、コードを使用して Web サーバー上にディレクトリを作成します。たとえば、次のようになります。
"~/userimages/628B3AF30B0F48EA8D61778084FC73C3/"
次に、次のようにいくつかの画像をここに保存します。
"~/userimages/628B3AF30B0F48EA8D61778084FC73C3/profilephoto160x160.jpg"
"~/userimages/628B3AF30B0F48EA8D61778084FC73C3/profilephoto25x25.jpg"
これにより、正しい画像への有効な URL を再作成するプロセスが、データベース内のプロファイル画像の URL のようにどこにもハードコードされず、次のような予測可能なプロセスになります。
var profileImgurl = BaseImageFolder + profile.UserCode + "profilephoto160x160.jpg"
私は CDN の経験がなく、後で移行するときに解決するのに苦労する問題を作成しているかどうか疑問に思っていましたか?
私が考えていなかったこのアプローチで厄介な問題が発生した人はいますか?
私が知る限り、グーグルのような人々はこれに対して同様のアプローチをとっています。