如何使用SignalR从文本框发送文本从客户端到中心

时间:2015-10-25 14:32:30

标签: c# asp.net signalr signalr-hub

我正在努力解决初学者问题。几个小时后问谷歌我找不到合适的答案(也许德语没有很好的解释)。

我创建了一个中心。在我的客户端上,我想将一个填充在文本框中的文本发送到我的中心。但它不起作用。我尝试了网上的每个教程。有人可以帮帮我吗?

这是我的代码:

枢纽类:

class myhub : Hub
{
    public void sendPatName (string name)
    {
        Clients.All.broadcastMessage(name);
        Console.WriteLine (name);
    }
}

客户端代码

var hubConnection = new HubConnection("http://192.168.188.33:8080");
IHubProxy PatScreenProxy = hubConnection.CreateHubProxy("myhub");

//this doesn't work
// PatScreenProxy.On<string>("boradcastMessage", (param) => this.Invoke((Action)(() => textBox2.AppendText(string.Format("{0}", param)))));

hubConnection.Start().Wait();
string PatName = this.txtbLastname.Text;
PatScreenProxy.Invoke("sendPatName", PatName);

当我尝试

PatScreenProxy.Invoke("sendPatName", "PatName");

我在我的中心收到字符串PatName。

如何发送文本框的内容?

1 个答案:

答案 0 :(得分:0)

我相信你的问题与这条线有关:

     PatScreenProxy.Invoke("sendPatName", PatName);

尝试将其显式转换为字符串:

     PatScreenProxy.Invoke("sendPatName", PatName.ToString());