与System.Net.Http.WebRequestHandler

时间:2017-03-05 16:57:44

标签: c# asp.net signalr signalr.client

成功创建了一个服务器signalR应用程序,我可以通过导航到http://localhost:11914/signalr/hubs来查看创建的JavaScript代码模板。

客户端应用程序是使用Visual Studio 2017最新RC的最新模板创建的.NET 4.6.2 web api。当我执行以下代码时:

    var hubConnection = new HubConnection("http://localhost:11914");
    var hubProxy = hubConnection.CreateHubProxy("cache");
    hubProxy.On<CachedObjectInfo>("sendUpdateNotification", cachedObject => RefreshMemory(cachedObject));
    await hubConnection.Start();

我在点击await hubConnection.Start();

时收到以下例外情况
type: 'System.Net.Http.WebRequestHandler'. Derived types must either match the security accessibility of the base type or be less accessible.'

客户端singalR应用程序利用Microsoft.AspNet.SignalR.Client 2.2.1版包。

我不知道为什么我应该收到这样的例外,我找不到任何解决方案。什么是根本原因以及如何减轻它?

1 个答案:

答案 0 :(得分:1)

我认为System.Net.Http软件包版本存在问题。更具体地说,如果您为运行的项目安装了v4.1.1 - v4.3.0,那么当您以.NET 4.6.1或4.6.2为目标时,您将遇到此问题。有关详细信息,请参阅this thread。为了解决这个问题,他们发布了一个新的软件包System.Net.Http 4.3.1,它应该摆脱错误。