Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Web应用程序,将成员状态更新为其他成员_C#_Javascript_Web Applications_Postback_Observer Pattern - Fatal编程技术网

C# Web应用程序,将成员状态更新为其他成员

C# Web应用程序,将成员状态更新为其他成员,c#,javascript,web-applications,postback,observer-pattern,C#,Javascript,Web Applications,Postback,Observer Pattern,如果他在线或离线,我想让他成为朋友 c#代码隐藏、javascript、html5 有一个类似的问题,但它使用.php,我对php一无所知 无论如何,我认为对于联机,您可以跟踪用户实际登录的时间。(将数据库中的“联机”字段设置为true) 但是,如何将该信息发送给需要知道其他用户是否登录的人?codebehind或js是否有类似的接收函数/方法,当他上线时会被调用?(类似于观察者模式?) 此外,当它更新时,我们不希望整个页面刷新,而是希望页面尽可能不闪烁。发回 最后,要跟踪用户是否处于脱机状态,

如果他在线或离线,我想让他成为朋友

c#代码隐藏、javascript、html5

有一个类似的问题,但它使用.php,我对php一无所知

无论如何,我认为对于联机,您可以跟踪用户实际登录的时间。(将数据库中的“联机”字段设置为true)

但是,如何将该信息发送给需要知道其他用户是否登录的人?codebehind或js是否有类似的接收函数/方法,当他上线时会被调用?(类似于观察者模式?)

此外,当它更新时,我们不希望整个页面刷新,而是希望页面尽可能不闪烁。发回

最后,要跟踪用户是否处于脱机状态,可能需要http响应来检查在线用户是否仍处于联机状态。但是怎么做呢P

如果我们最终将其离线,我们是否可以使用我们通知其他人他在线的相同接收功能/方法

任何帮助都是非常感激的。希望能成为类似线程的参考

但是,如何将该信息发送给需要知道其他用户是否登录的人

您无法将信息发送给用户。他必须亲自得到信息。我的意思是http是一个“拉协议”,这意味着你不能把信息推送到客户机,你只需要给他他所要求的

现在,您需要的是客户端请求信息,而不注意浏览器正在发送请求。最好的方法是在javascript中使用Ajaxweb服务发送请求。这样,您就可以从服务器获取信息,而无需进行任何回发。然后,为了给人留下实时信息的印象,您需要在setTimeout中设置ajax调用,以便在任何给定的时间间隔(30秒,1分钟,由您选择)获取信息

为了大大简化ajax调用,请查看

如果你对此一无所知,不要放弃,它可能看起来比实际情况更复杂

最后,跟踪用户是否处于脱机状态

我建议您跟踪来自该用户的每个请求,在一段时间没有任何请求后,您将该用户声明为已注销


希望这有帮助

因此,使用ajax,它将请求“获取”其他用户的状态。但是,如果你想在web应用程序上显示这些信息,那么你需要回发以将状态更改为在线或离线,对吗?你的ajax调用将接收到状态,然后你可以用javascript对其执行你想要的操作。例如,Facebook在用户名旁边将一个小点变成绿色。我对javascript也不太了解,但如果你设置了一个计时器,你需要一个新的线程或它无关的东西吗?我的意思是,如果将另一个javascript函数绑定到一个按钮,会发生什么?它会导致任何问题吗?它本身几乎可以工作,请参见此处的setInterval:。javascript中没有多线程,但类似的函数将“模拟”它。我熟悉javascript中的计时器,只是不知道线程发生了什么,非常感谢您提供的所有信息!