我整晚都在寻找一个免费的AspNet网络聊天控件,我可以直接将其拖入我的网站。那么搜索是徒劳的,因为我找不到符合我需求的控件,即用户列表,1对1聊天,能够踢出用户..
最后我决定从scractch创建自己的控件。虽然它在我的机器上运行良好但我担心它在共享主机环境中可能有点粗糙和不实用。
基本上这就是我所做的:
然后是'原始'部分:
..然后我就这样做了 在计时器刻度事件中,我'刷新'通过在我的中继器上调用Databind()来显示消息,即
protected void Timer1_Tick(object sender, EventArgs e)
{
MyRepeater.DataBind();
}
然后在我的发送按钮点击事件
protected void btnSend_Click(object sender, EventArgs e)
{
MyDataLayer.InsertMessage(Message, Sender, CurrTime);
}
那么它在我的机器上运行良好,我已经通过简单地创建更多表来获得其他功能(用户列表,踢出用户......)。
但就像我说的那样对我来说似乎有点粗糙。所以我需要一个专业的意见。我应该使用此方法还是尝试其他方法?
答案 0 :(得分:1)
我不确定你为什么认为它粗糙 - 我希望使用客户端轮询以完全相同的方式开发任何其他ASP.NET聊天控件。但是,作为使用Update面板的替代方案,我建议使用JQuery(或其他一些Javascript框架)编写客户端AJAX功能 - ASP.NET Update面板实际上只是使用渲染技巧的标准ASP.NET回发,因此屏幕不必刷新。
关于用你所拥有的东西跑步,如果你已经走了很远,我会继续。即使您决定将其替换为轨道上的其他内容,这对您的聊天客户端的要求也将是一次很好的学习练习。