最后看到更新频率设计问题

时间:2011-01-31 18:33:32

标签: asp.net-mvc design-patterns asp.net-mvc-3

我有一个DateTime LastSeen属性,在上次看到用户时存储在数据库中。

在更新数据库时,我有一种方法是在登录期间验证用户时执行此操作。

另一种方法是如果我每20分钟更新一次数据库,我将这个逻辑放在asp.net mvc中?我是否需要在Cookie中设置lastupdate并检查?除了在 global.ascx。文件中,我在哪里检查这个cookie?

其他系统如何做到这一点?

2 个答案:

答案 0 :(得分:1)

就个人而言,我会从谷歌分析书中拿出一页并运行这个客户端。到那里:

a)设置一个处理程序/动作/某些东西,它接受http请求来处理记录用户“看到”的活动 b)设置ajax调用(a)以合理的间隔记录客户的活动。

这将让你更好地回答这个问题“如果bob刚刚打开网站,看到他没有任何消息,继续浏览[无论如何]”

答案 1 :(得分:0)

我认为,正如您所建议的那样,在用户登录时更新该值将是最简单的。

如果你的模型还有CreatedOn,CreatedBy,ModifiedOn,ModifiedBy属性,你也可以通过连接查询这些值到用户表上,看看他们是否在应用程序的其他地方处于活动状态,但这可能不如你的表现好在数据库中的每个表都需要连接。