json.net - Serializing/deserializing derived objects in SignalR -


i using signalr 1.1 .net clients. have single method in hub accepts object of basemessage class , broadcasts clients:

public void sendmessage(basemessage message) {     clients.all.broadcastmessage(message); } 

clients pass derived messages method:

_hub.invoke("sendmessage", new errormessage("some error")).wait(); 

the client has single message handler:

_hub.on<basemessage>("broadcastmessage", onmessagereceived); 

i've specified typenamehandling.all serializer settings @ application startup:

var settings = new jsonserializersettings { typenamehandling = typenamehandling.all}; var serializer = new jsonnetserializer(settings); globalhost.dependencyresolver.register(typeof(ijsonserializer), () => serializer); 

but when client sends derived message, server receives base message.

how should configure serializer able receive derived messages?

note: can serialization/deserialization manually , pass strings server, causes double serialization.

signalr not supporting scenario require json payload contain information derived type , assembly. see sample. adding type information in payload not play browsers. suggest create individual hub methods handle each of derived types.


Comments

Popular posts from this blog

SPSS keyboard combination alters encoding -

Socket.connect doesn't throw exception in Android -

iphone - How do I keep MDScrollView from truncating my row headers and making my cells look bad? -