Skip to content

vkApi.Groups.GetMembersAsync выдает ошибку при указанном фильтре или возврате одного значения #1627

@DeveloperSuccess

Description

@DeveloperSuccess

При вызове vkApi.Groups.GetMembersAsync с фильтром GroupsMemberFilters.Donut мне должно вернуться одно значение, но вместо этого валится ошибка от Newtonsoft.Json. Я не знаю, дело в том что я вызываю фильтр или нет, я думаю дело в том что идет возврат только одного элемента, потому-что без фильтра мне возвращается 1000 корректно.
Проверял в тесте Api от ВК https://dev.vk.com/ru/method/groups.getMembers и всё корректно.

  1. Target для .NET используемый в проекте: (Официально поддерживаем , .net 4.5, NETStandard2.0) (поставьте 'x' в квадратных скобках)
  • .net 4.5
  • NETStandard2.0
  • другое. Указать строкой ниже.
  1. Класс и метод в котором возникла проблема:
    vkApi.Groups.GetMembersAsync

  2. Пример кода для воспроизведения проблемы, пожалуйста указывайте конкретные значения параметров запроса:

 var members = await _vkApi.Groups.GetMembersAsync(
    new GroupsGetMembersParams() 
    { 
        GroupId = "тут id моей группы",
        Filter = GroupsMemberFilters.Donut
    }, token: cancellationToken);
  1. JSON ответа. Для удобства сбора этих данных подключите логи (https://github.com/vknet/vk/wiki/Logging):
Newtonsoft.Json.JsonReaderException: Error reading JObject from JsonReader. Current JsonReader item is not an object: Integer. Path 'response.items[0]', line 1, position 41.
   at Newtonsoft.Json.Linq.JObject.Load(JsonReader reader, JsonLoadSettings settings)
   at Newtonsoft.Json.Linq.JObject.Load(JsonReader reader)
   at VkNet.Utils.JsonConverter.UserJsonConverter.ReadJson(JsonReader reader, Type objectType, Object existingValue, JsonSerializer serializer)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.DeserializeConvertable(JsonConverter converter, JsonReader reader, Type objectType, Object existingValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
   at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
   at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType)
   at Newtonsoft.Json.Linq.JToken.ToObject(Type objectType, JsonSerializer jsonSerializer)
   at Newtonsoft.Json.Linq.JToken.ToObject(Type objectType)
   at VkNet.Utils.JsonConverter.VkCollectionJsonConverter.ReadJson(JsonReader reader, Type objectType, Object existingValue, JsonSerializer serializer)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.DeserializeConvertable(JsonConverter converter, JsonReader reader, Type objectType, Object existingValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
   at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
   at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType)
   at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
   at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
   at VkNet.VkApi.Call[T](String methodName, VkParameters parameters, Boolean skipAuthorization, JsonConverter[] jsonConverters)
   at VkNet.Categories.GroupsCategory.GetMembers(GroupsGetMembersParams params, Boolean skipAuthorization)
   at VkNet.Categories.GroupsCategory.<>c__DisplayClass4_0.<GetMembersAsync>b__0()
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)

Metadata

Metadata

Assignees

Labels

ОшибкаВ существующем функционале есть проблема

Type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions