I am 'migrating' a MVC WebApplication to a Raspberry Pi 2. The original Web Application uses SignalR 2.x. After googling for weeks, I believe that the lastest Mono 4.0.1 only supports self-hosted SignalR server due to OWIN issue (ref here). So I tried to revert back to SignalR 1.x to avoid using OWIN middleware approach.
I followed the SignalR 1.x tutorial here and was able to run the sample, except that when $.connection.hub.start()
is called in the client's browser, the xsp4 server throws the following exception:
Missing method System.Web.Security.MachineKey::Protect(byte[],string[]) in assembly /usr/lib/mono/gac/System.Web/4.0.0.0__b03f5f7f11d50a3a/System.Web.dll, referenced in assembly /tmp/pi-temp-aspnet-0/1543474b/assembly/shadow/c3a92c68/a3f2fa86_605bd6ee_00000001/Microsoft.AspNet.SignalR.SystemWeb.dll
The RouteTable.Routes.MapHubs()
in Application_Start()
seems to work OK as I can get the generated /signalr/hubs
script without problem.
It seems that this function System.Web.Security.MachineKey::Protect()
is not implemented in mono. I wonder if anyone has any workaround to this error.
Thank you very much in advance.