【发布时间】:2021-06-11 14:24:38
【问题描述】:
我正在使用 .NET Core 和 Xamarin (https://docs.tizen.org/application/dotnet/) 构建一个 Tizen 应用程序 (.NET Tizen 4.0)。
一切都很好,除了一件事。无法启动到集线器的 SignalR (Microsoft.AspNetCore.SignalR.Client (5.0.7)) 连接。一旦我创建了一个新的 HubConnectionBuilder,就会引发以下异常:
System.IO.FileLoadException:无法加载文件或程序集“System.Threading.Tasks.Extensions,版本=4.2.0.1,文化=中性,PublicKeyToken=cc7b13ffcd2ddd51”。找到的程序集的清单定义与程序集引用不匹配。 (HRESULT 异常:0x80131040)
关于这个的最奇怪的部分。这个异常在我没有做任何事情的情况下改变。例如,如果我喝了一杯,回来再次运行它,就会缺少一个不同的程序集。现在我看到System.Threading.Tasks.Extensions, Version=4.2.0.1 或Microsoft.Extensions.DependencyInjection.Abstractions, Version=5.0.0 不见了。最重要的是:我不积极使用这些软件包中的任何一个。
所以基本上,只要我删除以下代码行,一切正常。
this.hub = new HubConnectionBuilder().WithUrl($"wss://{Settings.Instance.ServerAddress}/deviceHub").Build();
我已经尝试添加缺少的包,但没有成功。问题是,由于某些非常奇怪的原因,在 SignalR.Client 包中找不到这些包(只是我的猜测)。我还尝试删除 SignalR.Client、重建项目、从 Visual Studio 卸载 Tizen、更新我的所有包,甚至卸载 Visual Studio。我真的在这上面浪费了最后 3 天,没有任何进展。也许有人对此有解决方案,或者某种解决方法。
【问题讨论】:
标签: c# .net .net-core signalr tizen