Signalr Side Side JSON Serializer
-
21-12-2019 - |
Pregunta
Tengo lo siguiente
class A : ISomthing{}
Class B : ISomthing{}
interface ISomthing{}
Class C { public ISomthing _member {get;set}}
e intento enviar el siguiente objeto desde mi cliente .NET SIENSER a mi HUB, estoy usando Signalr 2.0.2
C obj = new C();
obj._member = new A();
Recibo el siguiente error, no pudo crear una instancia de tipo ISOMTHING.El tipo es una interfaz o clase abstracta y no se puede instanciar.
En mi cliente y el lado del servidor, estoy usando jsonserializer.typenamehandling= typenamehandling.auto;
Actualización: El objeto puede ser serializado por sí mismo, utilizando el Serializador SignalR: VAR TextWriter= nuevo stringwriter (); _hubproxy.jsonserializer.Serialize (TextWriter, OBJ);
Solución
Aparentemente, esto no se admite actualmente, consulte mi pregunta aquí
y la respuesta que tengo: "El dependencyResolver tiene una IPEPARAMETERRESOLVER REGISTRADA QUE ES RESPONSABLE DE DESERIALIZACIÓN DE LOS ENTRADOS DEL SERVIDOR DE DESERIALIZACIÓN. El IPARAMETRESOLVER se implementa por defectoParameterResolver, que no usa el JSOSSERIALIZANTE registrado el dependencyResolver. Msdn.microsoft.com/en-us/library/jj919135(v=vs.118) .aspx "