public List <AudioEntry> Search(string query, AudioSortOrder order, bool withLyrics, int?count, int?offset) { this.Manager.Method("audio.search"); this.Manager.Params("q", query); this.Manager.Params("sort", order); this.Manager.Params("lyrics", ((withLyrics) ? 1 : 0)); if (count != null) { this.Manager.Params("count", count); } if (offset != null) { this.Manager.Params("offset", offset); } XmlNode result = this.Manager.Execute().GetResponseXml(); if (this.Manager.MethodSuccessed) { XmlUtils.UseNode(result); this.searchSongsCount = XmlUtils.Int("count"); return(this.buildList(result)); } return(null); }
/// <summary>Возвращает список аудиозаписей в соответствии с заданным критерием поиска.</summary> /// <param name="q">строка поискового запроса</param> /// <param name="auto_complete">Если этот параметр равен 1, возможные ошибки в поисковом запросе будут исправлены</param> /// <param name="sort">Вид сортировки</param> /// <param name="lyrics">Если этот параметр равен 1, поиск будет производиться только по тем аудиозаписям, которые содержат тексты</param> /// <param name="count">количество возвращаемых аудиозаписей (максимум 200)</param> /// <param name="offset">смещение относительно первой найденной аудиозаписи для выборки определенного подмножества</param> /// <returns>Ответ сервера в XML или JSON формате.</returns> private VKResponseBase search(string q, System.Boolean? auto_complete, AudioSortOrder? sort, System.Boolean? lyrics, System.Int32? count, System.Int32? offset) { manager.AddValueByName("@q", q); manager.AddValueByName("@auto_complete", auto_complete); manager.AddValueByName("@sort", sort); manager.AddValueByName("@lyrics", lyrics); manager.AddValueByName("@count", count); manager.AddValueByName("@offset", offset); return new VKResponseBase(GetResponse("search"), IsXMLResponse); }
/// <summary>Возвращает список аудиозаписей в соответствии с заданным критерием поиска.</summary> /// <param name="q">строка поискового запроса</param> /// <param name="auto_complete">Если этот параметр равен 1, возможные ошибки в поисковом запросе будут исправлены</param> /// <param name="sort">Вид сортировки</param> /// <param name="lyrics">Если этот параметр равен 1, поиск будет производиться только по тем аудиозаписям, которые содержат тексты</param> /// <param name="count">количество возвращаемых аудиозаписей (максимум 200)</param> /// <param name="offset">смещение относительно первой найденной аудиозаписи для выборки определенного подмножества</param> /// <returns>Ответ сервера в XML или JSON формате.</returns> public VKResponseBase Search(string q, System.Boolean? auto_complete = null, AudioSortOrder? sort = null, System.Boolean? lyrics = null, System.Int32? count = null, System.Int32? offset = null) { return search(q, auto_complete, sort, lyrics, count, offset); }
public async Task<EntityList<Audio>> AudioSearchAsync( string q , bool autoComplete = true, bool lyrics = false, bool performerOnly = false, AudioSortOrder sort = AudioSortOrder.ByRating, bool searchOwn = false, uint offset = 0, uint count = 100 ){ return (await Executor.ExecAsync( _reqapi.AudioSearch( q, autoComplete, lyrics, performerOnly, sort, searchOwn, offset, count ) )).Data.FirstOrDefault(); }
public VKRequest<EntityList<Audio>> AudioSearch( string q , bool autoComplete = true, bool lyrics = false, bool performerOnly = false, AudioSortOrder sort = AudioSortOrder.ByRating, bool searchOwn = false, uint offset = 0, uint count = 100 ){ var req = new VKRequest<EntityList<Audio>>{ MethodName = "audio.search", Parameters = new Dictionary<string, string> { { "q", q }, { "auto_complete", (autoComplete?1:0).ToNCString() }, { "lyrics", (lyrics?1:0).ToNCString() }, { "performer_only", (performerOnly?1:0).ToNCString() }, { "sort", ((int)sort).ToNCString() }, { "search_own", (searchOwn?1:0).ToNCString() }, { "offset", offset.ToNCString() }, { "count", count.ToNCString() } } }; if (IsLogged){ req.Token = CurrentToken; } return req; }
public EntityList<Audio> SearchSync( string q , bool autoComplete = true, bool lyrics = false, bool performerOnly = false, AudioSortOrder sort = AudioSortOrder.ByRating, bool searchOwn = false, int? offset = null, int? count = 100 ) { var task = _parent.Executor.ExecAsync( _parent._reqapi.Audio.Search( q,autoComplete,lyrics,performerOnly,sort,searchOwn,offset, count ) ); task.Wait(); return task.Result.Response; }
public async Task <EntityList<Audio>> Search( string q , bool autoComplete = true, bool lyrics = false, bool performerOnly = false, AudioSortOrder sort = AudioSortOrder.ByRating, bool searchOwn = false, int? offset = null, int? count = 100 ) { return ( await _parent.Executor.ExecAsync( _parent._reqapi.Audio.Search( q,autoComplete,lyrics,performerOnly,sort,searchOwn,offset, count ) ).ConfigureAwait(false) ).Response; }
public async Task<string> AudioSearchAsync( string q , bool autoComplete = true, bool lyrics = false, bool performerOnly = false, AudioSortOrder sort = AudioSortOrder.ByRating, bool searchOwn = false, uint offset = 0, uint count = 100 ){ return await Executor.ExecRawAsync( _reqapi.AudioSearch( q, autoComplete, lyrics, performerOnly, sort, searchOwn, offset, count ) ); }
public List<AudioEntry> Search(string query, AudioSortOrder order, bool withLyrics, int? count, int? offset) { this.Manager.Method("audio.search"); this.Manager.Params("q", query); this.Manager.Params("sort", order); this.Manager.Params("lyrics", ((withLyrics) ? 1 : 0)); if (count != null) { this.Manager.Params("count", count); } if (offset != null) { this.Manager.Params("offset", offset); } XmlNode result = this.Manager.Execute().GetResponseXml(); XmlUtils.UseNode(result); this.searchSongsCount = XmlUtils.Int("count"); return this.buildList(result); }