2012-03-30 11 views
2

私のプロジェクトの1つとして、一種の内部電子メールシステムを作成する必要がありました。ページの上部にあるナビゲーションメニューには、受信トレイへのリンクがあり、そのリンクには未読メッセージ数もあります。受信トレイの更新新しいメッセージ数

現在、新しいメッセージを受信した場合、ナビゲーション内の未読メッセージ数は、ページが最新表示されるまで更新されません。これは、数秒ごとに更新されるように変更する必要があります。

私は自分自身で解決策を作りたいと思いますが、正しい方向にプッシュするだけです。

ajaxとwebservicesの組み合わせを使用する必要がありますか?他に何か?ありがとう!

答えて

1

はい、ajaxとウェブサービスの組み合わせを使用する必要があります。数秒ごとに起動するajaxメソッドを作成し、受信トレイに未読メッセージの数を返すWebサービスエンドポイントにヒットします。それから、ajaxのreturnメソッドで、未読のメッセージ数をサーバーの結果で更新します。

+1

ただ、この文脈でそのWebサービスを明確にするには、明示的に.NET石鹸のWebサービスを意味するものではありません。あなたのajaxメソッドは、soap Webサービス、ページメソッド、mvcコントローラアクション、wcfサービスメソッド、およびおそらく他のapiを呼び出すことができます。 – CheckRaise

+0

@ eouw0o83hf操作のご注文ありがとう、大きな助け! – peroija

+0

@CheckRaise良い電話 – peroija

1

SignalRをご覧になることをお勧めします。これは自由に利用できるライブラリで、クライアントとサーバーの間の接続をアクティブに保つことで、JavaScriptがC#と "通信"することができます。つまり、誰かがメッセージを送信すると、イベントをトリガーして通知をクライアントにプッシュすると、クライアントはメッセージと魔法があるかどうかを確認します。かなりファンキーでセットアップも簡単です。 でも、同時に多数のユーザーを接続する可能性があることに注意してください。 :)

SignalR: https://github.com/SignalR/SignalR

チュートリアル: http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx

+0

私は質問で述べたように、私は何かpremadeを使いたくありません。しかし、うまくいけば、この質問に遭遇した人はあなたの提案が役に立つと思うでしょう – peroija