Um konsistente Serialisierung über meine Anwendungsschichten hinweg zu haben, möchte ich die gleiche Serialisierungsbibliothek (ServiceStack.Text) für SignalR verwenden, die ich überall sonst verwende.
Während ich den Eintrag von SignalR zum Ersetzen des verwendeten JSON-Serialisierers befolgte, habe ich dies erstellt Basishandler:
%Vor%Integration:
%Vor%Leider erhält der SignalR JS-Client nach der Integration andere Pakete als mit dem Standard-Serializer. Wie es aussieht, generiert der Standard-Serializer JSON (zumindest für Nicht-Benutzer-Nachrichten) mit Eigenschaften, die auf 1 Zeichen begrenzt sind, was nicht auftritt, nachdem er durch ServiceStack.Text ersetzt wurde. Daher versucht SignalR auf 'I' zuzugreifen, aber es erhielt 'Id'. Ich konnte die entsprechenden Teile des SignalR serverseitigen Quellcodes nicht finden.
Habe ich etwas falsch gemacht oder muss ich einen komplexeren Wrapper erstellen, um ServiceStack.Text als JSON-Serializer zu verwenden?