2012-03-30 3 views
2

내 프로젝트 중 하나에 대해 일종의 내부 이메일 시스템을 만들어야했습니다. 페이지 상단의 내 탐색 메뉴에는받은 편지함에 대한 링크가 있으며 링크에는 읽지 않은 메시지 수가 있습니다.받은 편지함 업데이트 새 메시지 수

현재 새 메시지를 받으면 페이지가 새로 고쳐질 때까지 탐색 메뉴의 읽지 않은 메시지 수가 업데이트되지 않습니다. 이것은 몇 초마다 업데이트되도록 변경해야합니다.

저는 premade를 사용하고 싶지 않습니다. 솔루션을 직접 만들고 싶지만 올바른 방향으로 밀어 넣기 만하면됩니다.

ajax와 webservices의 조합을 사용해야합니까? 다른 것? 감사!

답변

1

예, 아약스와 웹 서비스를 함께 사용해야합니다. 몇 초마다 작동하는 ajax 메서드를 만들고받은 편지함에 읽지 않은 메시지 수를 반환하는 웹 서비스 끝점에 도달합니다. 그런 다음 Ajax 리턴 메소드에서 서버의 결과로 읽지 않은 메시지 수를 업데이트하도록합니다.

+1

그냥 명시 적으로 .NET 비누 웹 서비스를 의미하지 않는다 이러한 맥락에서이 웹 서비스를 명확히하기. 당신은 아약스 메소드가 비누 웹 서비스, 페이지 메쏘드, 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

관련 문제