私はこれを持っています:
public Int32 NumberOfLocationsForCompany(int companyId)
{
var response = _curl.ResetRequest()
.WithPath(LOCATION_URL)
.AddParam("companyId", companyId.ToString())
.RequestAsGet()
.ProcessRequest<Int32>();
return response;
}
最後にこれを呼び出します。
public T ProcessRequest<T>() where T : new()
{
var response = _client.Execute<T>(_request);
if (response.ErrorException != null)
{
throw response.ErrorException;
}
return response.Data;
}
しかし、私はこのエラーが発生します。int をコレクションにマップしようとしている理由、または指定した 32 ではなく Int64 である理由がわかりません。タイプ 'System.Int64' のオブジェクトをタイプ 'System.Collections.Generic.IDictionary`2[ にキャストできませんSystem.String,System.Object]'.
APIを直接ヒットすると、これが返されます
<int xmlns="http://schemas.microsoft.com/2003/10/Serialization/">17</int>
Rest Sharpについては、私が理解していないことだと思います。execute メソッドに Int を期待するように指示すると、int を受け取りますが、それをコレクションにマップしようとしています。コレクションはなぜ、どこから来たのですか?
ベース レスポンス オブジェクトのコンテンツを調べると、適切な結果 "17" が存在することに気付きました。Rest Sharp がそれを見つけられないのはなぜですか? それでも、コレクションはどこにあるのでしょうか?