NET Web フォーム ベースのアプリケーションを c# で作成します。ログインしているユーザー間のチャットを可能にするモジュールをアプリケーションに追加する必要があり、ユーザーはチャット中に Skype のようにファイルを共有できます。その間、セッション中に転送された会話のすべての単語とファイルの永続的な記録をサーバーに保持する必要があります。望ましい結果を達成するためのモジュールの実装について少し考えていますが、それは良い習慣ではないと確信しています。ここに私の考えがあります:
チャット: ユーザーがチャットしている間に、送信者 ID、受信者 ID、およびメッセージの内容を含むデータ テーブルを作成します。ユーザーが送信ボタンを押すか、Enter キーを押すと、ID とメッセージ コンテンツの両方を含む新しい行がデータ テーブルに挿入され、データ テーブルが div などにバインドされて、更新されたメッセージが両方のユーザーに表示されます。最後に、イベント (ウィンドウを閉じるなど) が発生すると、データテーブルが XML に変換され、XML ファイルがハードディスクまたはデータベースに永続的に保存されます。
ファイル転送: チャット中にユーザーが入力/送信ボタンを押すたびにメッセージの内容を確認し、送信されるメッセージがファイル (何らかの拡張子を含む) である場合は、サーバーにファイルをアップロードし、受信者にダウンロード リンクを提供します。
あなたが私の主張を理解してくれることを願っています。
問題:
1) ファイルを非同期で共有したい。つまり、受信者への転送とサーバーへの保存を同時に行いたい。出来ますか?
2) あるユーザーに、他のユーザーが入力していることを伝える方法は?
このモジュールを実装するより良い方法はありますか? モジュールを正しく理解して実装するには、どのような知識が必要ですか?
ご指導ありがとうございます。