私は ASP.NET MVC サイトに取り組んでおり、私の要件の一部は、ユーザーが相互にメッセージを送信できることです。
表面的には、これはそれほど難しい作業ではありません。最も単純化された形式のメッセージングは、「SenderID、ReceiversID(FK)、件名、メッセージ」などを含む単純な「メッセージ」テーブルです。
しかし、「添付ファイル」をどのように処理しますか? ユーザーは、当社の Web サイトで財務情報を含む機密 PDF を閲覧でき、「レポートを送信」ボタンをクリックして、テキスト メッセージと共にレポートを他のユーザーに送信できると想定されています。
同様に、複数のファイルをアップロードして、メッセージと一緒に送信することもできます (参照できる内部文書だけではありません)。
ASP.NET MVC でこれをどのように処理しますか?
添付ファイル フォルダーと添付ファイル テーブルをどこかに置くことを検討したので、ユーザーが [レポートの送信先] をクリックするかドキュメントをアップロードすると、そのファイルが添付ファイル フォルダーにコピーされ、添付ファイル テーブルにエントリが作成されます。
次に、ユーザーが /messaging/attachments/{fileID} のようなルートを持つリンクをクリックすると、適切なファイルが送信されます。添付ファイル/ファイル テーブルで各ファイルのチェックサムを維持することもできるので、ユーザーが同じレポートを送信した場合、添付ファイル フォルダーでファイルが重複することはありません。
ある意味、私は電子メールを再発明しているように感じますが、クライアントは、セキュリティ コンプライアンスを維持するために、これらのレポートを単に電子メールでユーザーに送信するのではなく、システムにログインして取得する必要があると主張しています。
これはこのようなことを行う正しい方法ですか、それとも別のアプローチを検討する必要がありますか?