如何控制没有。用户登录?

时间:2011-04-06 11:17:26

标签: c# sql database service

我在用户端有一个Windows应用程序,在管理员端有一个连接在局域网中的Web服务......

当用户运行Windows应用程序时,有一个登录表单,当用户登录Web服务时,会调用一行(包含用户的详细信息)动态添加到管理员当前的数据库表中侧。

现在我希望只有指定的用户才能登录,即如果admin给3个用户,那么只有3个用户应该能够登录,如果第4个用户尝试登录,则应该给出错误消息。用户已超过。我尝试使用for循环执行此操作:

for(count=0 ; count<noofusers ; count++) { //code for inserting the row dynamically into database }

但同时在数据库中添加了3行

我希望当1个用户登录时应添加1行,当另一个用户登录时,NOOfUsers应该增加,第二行应该添加等等......最后当第4次用户登录时,他不应该被允许...

任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

private static object _lock = new object();

public void LogIn(string username, string password)
{
    lock(_lock)
    {
        if (NumLoggedInUsers() >= MaxNumUsers())
        {
            return "Sry dudez, too many userz";
        }
    }
}

我会留下NumLoggedInUsers()和MaxNumUsers作为读者的练习。

请注意,如果有2人尝试同时登录,我会锁定该支票。