gpt4 book ai didi

C# - SignalR 如何删除我的事件处理程序

转载 作者:太空狗 更新时间:2023-10-30 00:03:10 28 4
gpt4 key购买 nike

我是一名 C# 新手,试图在我的 Xamarin IOS 应用程序中实现 SignalR。

我的代码很简单:

 _connection = new Microsoft.AspNet.SignalR.Client.Hubs.HubConnection (Common.signalRAddress);

feedHub = _connection.CreateHubProxy ("feedHub");

_connection.Received += data => { OnReceiveData (data); };

_connection.Start ();

我的问题是如何删除我的委托(delegate)?写够了吗?

_connection.Received -= data =>  { OnReceiveData (data); };

非常感谢任何帮助。

最佳答案

您正在使用集线器,为什么不使用内置的开/关来调用方法?

又名:

var doSomething = feeHub.On<int>("doSomething", val => {
// Do something with int val
});

然后要删除它,您可以执行以下操作:

doSomething.Dispose();

如果您真的想监听流经集线器的所有数据,那么使用 Received 是正确的方法,@Dracanus 的回答会奏效。

关于C# - SignalR 如何删除我的事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16172578/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com