我是商业Windows应用程序(c#)的首席开发人员.新要求是跟踪滥用许可证的客户.
例如:假设客户购买了10个用户许可协议,即在任何给定时间内同时拥有10个用户.
我需要能够报告,回顾历史,客户有超过10个用户同时登录的所有时间.
我已经有一个包含列的User表:userid(主键),pw,lastLogin,lastLogout.
我正在考虑创建一个新的"日志记录"表,每次用户注销时都会添加一个新行...列可能包括:
LogId,UserId,LoginDateTime,LogoutDateTime
...然后我会有一个用户每次登录/退出应用程序的历史记录...
但是我不确定这个表设计是否会为报告提供有效的计算...我是否使用SQL或c#来执行计算对我来说无关紧要,只要它相当快......
希望有人可能对如何更好地设计此表有一个好主意,以便我可以快速计算客户超出许可限制时的任何/所有时间点.
注意:我不想阻止11t,12th等用户使用该应用程序...要求是向用户显示警告消息但允许他继续工作...