0

私はNewtonSoft linq 2 jsonを使用して、オブジェクトをクラスから直接json文字列にシリアル化します

私が使用しているクラス オブジェクトは非常に単純です。

public class OverviewQuery
{
    public string id { get; set; }
    public string method { get; set; }
    public string Params { get; set; }

    public OverviewQuery(string sid, string smethod, string sparam)
    {
        this.id = sid;
        this.method = smethod;
        this.Params = sparam;
    }
}

これをシリアル化すると、Json 文字列が得られます。

"{\"id\":\"1\",\"method\":\"getStockItemDetails\",\"Params\":\"0000000002\"}"

(WebAPI を介して) 接続している Oracle サーバーでは、非常に具体的な名前を使用する必要があります。

"{\"id\":\"1\",\"method\":\"getStockItemDetails\",\"Params\":[\"0000000002\"]}"

NewtonSoft がこのフォーマットを実現する方法を実装した方法はありますか? 正しいフォーマットがないと、情報を送信する唯一の方法は、すべてをハードコーディングすることです..

4

1 に答える 1

0

シリアライザーがクラスで行っていることは簡単に思えます。

通常、JSON-RPCサービスではparams、エンベロープ内の値がJSON Array(インデックス付きパラメーターの場合)またはObject(名前付きパラメーターの場合)である必要があります。

のようParamsにクラスを変更できますか?ArrayString

于 2012-04-30T08:00:38.797 に答える