WinRTクライアントを使用しています。メッセージを送信しようとすると、この例外が発生します。
値の解析中に予期しない文字が検出されました:<。
この問題は、オブジェクトをハブに送信し、そのオブジェクトがハブで定義されていない場合に発生します。オブジェクトはBindableオブジェクト(ViewModel)です。Webプロジェクトにすべてのプロパティ通知変更を含めたくありません。
クライアントコード
return Proxy.Invoke("PlayerUpdate", sessionData);
ハブに「オブジェクト」パラメータを受け入れさせることを試してみてください
public async Task PlayerUpdate(string group, object sessionData)
{
await Clients[group].PlayerUpdate(sessionData);
}
2つ試してみてください。ハブに(json)'string'パラメーターを受け入れさせることでした。
public async Task PlayerUpdate(string group, string sessionData)
{
await Clients[group].PlayerUpdate(sessionData);
}
3つ試してみてください。オブジェクトクライアント側を事前にシリアル化することでした。
var str = JsonConvert.SerializeObject(refresh);
return Proxy.Invoke("PlayerUpdate", str);
何も機能していません。計画4は、送信する共有ライブラリ内のいくつかのデータ転送オブジェクトを定義することです。コードが約2倍になるので、本当にやりたくありません。