我需要在服务器级别(“在线”或“离线”)保留记录的用户状态列表。使用AutoRefresh MVC部分视图
所以我写了一个部分视图来维护用户当前的状态(在线,离线)。 服务器将这些值存储在数据库和所有当前在线用户的缓存条目中,以便我可以从缓存中检索所有当前“在线”用户的列表。
为了保持这个列表最新,我现在需要一个异步的AutoRefresh调用,通知服务器将我的用户ID保留在ONLINE列表中。此调用应该每xx秒执行一次,并且只应在当前状态为ONLINE时执行。
问题:
- 我怎样才能创建一个自动刷新调用一个触发间隔XX秒
- 我怎么能保证这个调用执行,只有当我在在线状态是
谢谢提前。
这是有问题的部分视图。 你在哪里建议我把代码运行AutoRefresh(MasterPage,Main View,Partial View)???
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<%
if (MySite.Security.SiteUser.IsAuthenticated)
{
if (Convert.ToBoolean(ViewData["IsLogged"]))
{
%>
<div id="onlineStatus">
You are currently ONLINE >>
<%: Html.ActionLink("Take a Break", "GoOffline", "Account")%>
</div>
<%
}
else
{
%>
<div id="offlineStatus">
Ready for business >>
<%: Html.ActionLink("Go Online", "GoOnline", "Account")%>
</div>
<%
}
}
%>
如何设置用户本身是在线/离线? – generalhenry 2010-11-22 22:54:28
用户点击链接即可联机或脱机。我需要的是能够告诉服务器用户仍然在线。 这就是我需要每隔XX秒自动刷新功能的地方。 – 2010-11-25 10:13:24