Problem z pobraniem Api

0

Cześć mam problem pobieram z api "Followersow". APlikacja w MVVM na Xamarina. Pobieram z API Jsona i deserializuje do FollowersResponseModel teraz chciałbym to zwrócić w FollowersModel albo listę ale nie wiem jak mam do tego się zabrać

json

{"result":{"status":200,"response":{"data":{"users":[
{"uin":223,"login":"tttttt","uin_follows":true,"follow_of_uin":false,"blocked":false},
{"uin":225,"login":"hggjhjj","uin_follows":false,"follow_of_uin":true,"blocked":true},
{"uin":226,"login":"testestefy","uin_follows":false,"follow_of_uin":false,"blocked":true}
],"version":"1"}}}}

Moja metoda pobierająca Followersów

public async Task<FollowerModel> GetFollowersBlockedList(int version)
       {
           var request = CreateHttpRequest(string.Format(FOLLOWERS_BLOCKED_URL, version), HttpMethod.Get, true);

           var response = await CallRequestAsync(request, HttpContentType.ApplicationJson);

           if (response == null) return null;

           var stream = await response.Content.ReadAsStreamAsync();
           var content = Tools.ConvertStreamToString(stream);

           if (string.IsNullOrEmpty(content)) return null;

           var responseModel = JsonConvert.DeserializeObject<ResponseModel>(content);

           if (response.IsSuccessStatusCode)
           {
               _log.MessageInDebug("OK");

               var data = responseModel.Result.Response.Data.ToString();

               var model = JsonConvert.DeserializeObject<FollowerResponseModel>(data);

               if (model == null || model.User.Count() == 0) return null;

// Tu powinien być return FollowersModel ale nie wiem jak ma to wyglądać
}

return null;
}

Model FolowersResponseModel

public class FollowerResponseModel
    {
        [JsonProperty("users")]
        public List<UsersFollowersModel> Users { get; set; }

        [JsonProperty("version")]
        public int Version { get; set; }

        public class UsersFollowersModel
        {
            [JsonProperty("uin")]
            public int Uin { get; set; }

            [JsonProperty("login")]
            public string Login { get; set; }

            [JsonProperty("uin_follows")]
            public bool UinFollows { get; set; }

            [JsonProperty("follow_of_uin")]
            public bool FollowOfUin { get; set; }

            [JsonProperty("blocked")]
            public bool Blocked { get; set; }
        }
    }
0

Spróbuj zdeserializować "users" w ten sposób JsonConvert.DeserializeObject<List<UsersFollowersModel>>(usersNode);

0
Matt91111 napisał(a):

Spróbuj zdeserializować "users" w ten sposób JsonConvert.DeserializeObject<List<UsersFollowersModel>>(usersNode);

Zamiast var model = JsonConvert.DeserializeObject<FollowerResponseModel>(data);?
wyżej wymieniony model zwraca mi poprawnie User + jego followersów

1 użytkowników online, w tym zalogowanych: 0, gości: 1