2017-05-08 77 views
0

我使用的是自定義的JsonSerializer,如RestSharp軟件包中的自述文件中所述。我可以將自定義的JsonSerializer設置爲RestSharp RestClient

到現在爲止,我添加的自定義序列化到每一個請求:

RestRequest request = new RestRequest("scans", Method.POST); 
request.JsonSerializer = new MyCustomJsonSerializer(); 

但Read Me文件mentained我可以將其添加直接到RESTClient實現:

有一個重大更改:默認Json 串行器不是 與Json.NET更長的兼容。要使用Json.NET進行系列化, 從 https://github.com/restsharp/RestSharp/blob/86b31f9adf049d7fb821de8279154f41a17b36f7/RestSharp/Serializers/JsonSerializer.cs 複製代碼,並與您的客戶端進行註冊:

VAR的客戶=新RESTClient實現();

client.JsonSerializer = new YourCustomSerializer();

我找不到在RESTClient實現類此屬性...

它是在自述文件中的錯誤呢?或者包沒有更新? 是否有另一種方式來添加自定義序列化器,而不是將其添加到每個請求?

回答

1

自述文件中有一個錯誤,看來。

https://github.com/restsharp/RestSharp/issues/886 https://github.com/restsharp/RestSharp/issues/947

這是它應該如何使用:

有一個重大更改:默認的Json 串行沒有 與Json.NET不再兼容。要使用Json.NET進行系列化, 從 https://github.com/restsharp/RestSharp/blob/86b31f9adf049d7fb821de8279154f41a17b36f7/RestSharp/Serializers/JsonSerializer.cs 複製代碼,並與您的要求進行註冊:

var request = new RestRequest(); 
request.JsonSerializer = new Shared.JsonSerializer(); 

那麼您可以在客戶端使用它:

var client = new RestClient(); 
client.Post(request); 

來源:https://github.com/restsharp/RestSharp/blob/4e239eaa90abcc699f875bbd7a64efe76a995771/readme.txt

+0

所以,我應該加上manua對每個請求都適用?是嗎? –

+0

應該手動添加到每個請求? –

相關問題