44# You can read more on https://github.com/meilisearch/documentation/tree/master/.vuepress/code-samples
55---
66getting_started_faceting : |-
7- var faceting = new Faceting {
8- MaxValuesPerFacet = 2
7+ var faceting = new Faceting
8+ {
9+ MaxValuesPerFacet = 2,
10+ SortFacetValuesBy = new Dictionary<string, SortFacetValuesByType>
11+ {
12+ ["*"] = SortFacetValuesByType.Count
13+ }
914 };
1015 await client.Index("movies").UpdateFacetingAsync(faceting);
1116getting_started_pagination : |-
@@ -29,15 +34,15 @@ date_guide_filterable_attributes_1: |-
2934 await client.Index("games").UpdateFilterableAttributesAsync(new string[] { "release_timestamp" });
3035date_guide_filter_1 : |-
3136 var filters = new SearchQuery() { Filter = "release_timestamp >= 1514761200 AND release_timestamp < 1672527600" };
32- SearchResult<Game> games = await client.Index("games").SearchAsync<Game>("", filters);
37+ var games = await client.Index("games").SearchAsync<Game>("", filters);
3338date_guide_sortable_attributes_1 : |-
3439 await client.Index("games").UpdateSortableAttributesAsync(new string[] { "release_timestamp" });
3540date_guide_sort_1 : |-
3641 SearchQuery sort = new SearchQuery() { Sort = new string[] { "release_timestamp:desc" }};
3742 await client.Index("games").SearchAsync<Game>("", sort);
3843filtering_guide_nested_1 : |-
3944 var filters = new SearchQuery() { Filter = "rating.users >= 90" };
40- SearchResult<MovieRating> movies = await client.Index("movie_ratings").SearchAsync<MovieRating>("thriller", filters);
45+ var movies = await client.Index("movie_ratings").SearchAsync<MovieRating>("thriller", filters);
4146sorting_guide_sort_nested_1 : |-
4247 SearchQuery sort = new SearchQuery() { Sort = new string[] { "rating.users:asc" }};
4348 await client.Index("books").SearchAsync<Book>("science fiction", sort);
@@ -64,9 +69,15 @@ async_guide_canceled_by_1: |-
6469swap_indexes_1 : |-
6570 await client.SwapIndexesAsync(new List<IndexSwap> { new IndexSwap("indexA", "indexB"), new IndexSwap("indexX", "indexY") } });
6671search_parameter_guide_hitsperpage_1 : |-
67- await client.Index("movies").SearchAsync<Movie>("", new SearchQuery { HitsPerPage = 15 });
72+ var result = await client.Index("movies").SearchAsync<Movie>("", new SearchQuery { HitsPerPage = 15 });
73+ if(result is PaginatedSearchResult<Movie> pagedResults)
74+ {
75+ }
6876search_parameter_guide_page_1 : |-
69- await client.Index("movies").SearchAsync<Movie>("", new SearchQuery { Page = 2 });
77+ var result = await client.Index("movies").SearchAsync<Movie>("", new SearchQuery { Page = 2 });
78+ if(result is PaginatedSearchResult<Movie> pagedResults)
79+ {
80+ }
7081get_one_index_1 : |-
7182 await client.GetIndexAsync("movies");
7283list_all_indexes_1 : |-
@@ -264,28 +275,34 @@ field_properties_guide_displayed_1: |-
264275 });
265276filtering_guide_1 : |-
266277 SearchQuery filters = new SearchQuery() { Filter = "release_date > \"795484800\"" };
267- SearchResult<Movie> movies = await client.Index("movie_ratings").SearchAsync<Movie>("Avengers", filters);
278+ var movies = await client.Index("movie_ratings").SearchAsync<Movie>("Avengers", filters);
268279filtering_guide_2 : |-
269280 SearchQuery filters = new SearchQuery() { Filter = "release_date > 795484800 AND (director =
270281 \"Tim Burton\" OR director = \"Christopher Nolan\")" };
271- SearchResult<Movie> movies = await client.Index("movie_ratings").SearchAsync<Movie>("Batman", filters);
282+ var movies = await client.Index("movie_ratings").SearchAsync<Movie>("Batman", filters);
272283filtering_guide_3 : |-
273284 SearchQuery filters = new SearchQuery() { Filter = "release_date > 1577884550 AND (NOT director = \"Tim Burton\")" };
274- SearchResult<Movie> movies = await client.Index("movie_ratings").SearchAsync<Movie>("Planet of the Apes", filters);
285+ var movies = await client.Index("movie_ratings").SearchAsync<Movie>("Planet of the Apes", filters);
275286search_parameter_guide_query_1 : |-
276287 await client.Index("movies").SearchAsync<Movie>("shifu");
277288search_parameter_guide_offset_1 : |-
278289 var sq = new SearchQuery
279290 {
280291 Offset = 1
281292 };
282- await client.Index("movies").SearchAsync<Movie>("shifu", sq);
293+ var result = await client.Index("movies").SearchAsync<Movie>("shifu", sq);
294+ if(result is SearchResult<Movie> pagedResults)
295+ {
296+ }
283297search_parameter_guide_limit_1 : |-
284298 var sq = new SearchQuery
285299 {
286300 Limit = 2
287301 };
288- await client.Index("movies").SearchAsync<Movie>("shifu", sq);
302+ var result = await client.Index("movies").SearchAsync<Movie>("shifu", sq);
303+ if(result is SearchResult<Movie> pagedResults)
304+ {
305+ }
289306search_parameter_guide_retrieve_1 : |-
290307 var sq = new SearchQuery
291308 {
@@ -389,7 +406,7 @@ getting_started_search_md: |-
389406 MeilisearchClient client = new MeilisearchClient("http://localhost:7700", "masterKey");
390407 var index = client.Index("movies");
391408
392- SearchResult<Movie> movies = await index.SearchAsync<Movie>("botman");
409+ var movies = await index.SearchAsync<Movie>("botman");
393410 foreach (var movie in movies.Hits)
394411 {
395412 Console.WriteLine(movie.Title);
@@ -543,14 +560,14 @@ geosearch_guide_filter_settings_1: |-
543560 TaskInfo result = await client.Index("movies").UpdateFilterableAttributesAsync(attributes);
544561geosearch_guide_filter_usage_1 : |-
545562 SearchQuery filters = new SearchQuery() { Filter = "_geoRadius(45.472735, 9.184019, 2000)" };
546- SearchResult<Restaurant> restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("", filters);
563+ var restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("", filters);
547564geosearch_guide_filter_usage_2 : |-
548565 SearchQuery filters = new SearchQuery()
549566 {
550567 Filter = new string[] { "_geoRadius(45.472735, 9.184019, 2000) AND type = pizza" }
551568 };
552569
553- SearchResult<Restaurant> restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("restaurants", filters);
570+ var restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("restaurants", filters);
554571geosearch_guide_sort_settings_1 : |-
555572 List<string> attributes = new() { "_geo" };
556573 TaskInfo result = await client.Index("restaurants").UpdateSortableAttributesAsync(attributes);
@@ -560,7 +577,7 @@ geosearch_guide_sort_usage_1: |-
560577 Sort = new string[] { "_geoPoint(48.8561446,2.2978204):asc" }
561578 };
562579
563- SearchResult<Restaurant> restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("", filters);
580+ var restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("", filters);
564581geosearch_guide_sort_usage_2 : |-
565582 SearchQuery filters = new SearchQuery()
566583 {
@@ -570,13 +587,13 @@ geosearch_guide_sort_usage_2: |-
570587 }
571588 };
572589
573- SearchResult<Restaurant> restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("restaurants", filters);
590+ var restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("restaurants", filters);
574591geosearch_guide_filter_usage_3 : |-
575592 SearchQuery filters = new SearchQuery()
576593 {
577594 Filter = "_geoBoundingBox([45.494181, 9.214024], [45.449484, 9.179175])"
578595 };
579- SearchResult<Restaurant> restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("restaurants", filters);
596+ var restaurants = await client.Index("restaurants").SearchAsync<Restaurant>("restaurants", filters);
580597primary_field_guide_create_index_primary_key : |-
581598 TaskInfo task = await client.CreateIndexAsync("books", "reference_number");
582599primary_field_guide_update_document_primary_key : |-
@@ -619,7 +636,7 @@ delete_a_key_1: |-
619636 client.DeleteKeyAsync("6062abda-a5aa-4414-ac91-ecd7944c0f8d")
620637security_guide_search_key_1 : |-
621638 MeilisearchClient client = new MeilisearchClient("http://localhost:7700", "apiKey");
622- SearchResult<Patient> searchResult = await client.Index("patient_medical_records").SearchAsync<Patient>();
639+ var searchResult = await client.Index("patient_medical_records").SearchAsync<Patient>();
623640security_guide_update_key_1 : |-
624641 MeilisearchClient client = new MeilisearchClient("http://localhost:7700", "masterKey");
625642 await client.UpdateKeyAsync("74c9c733-3368-4738-bbe5-1d18a5fecb37", description: "Default Search API Key");
@@ -654,7 +671,7 @@ tenant_token_guide_generate_sdk_1: |-
654671 );
655672tenant_token_guide_search_sdk_1 : |-
656673 frontEndClient = new MeilisearchClient("http://localhost:7700", token);
657- SearchResult<Patient> searchResult = await frontEndClient.Index("patient_medical_records").SearchAsync<Patient>("blood test");
674+ var searchResult = await frontEndClient.Index("patient_medical_records").SearchAsync<Patient>("blood test");
658675getting_started_typo_tolerance : |-
659676 var typoTolerance = new TypoTolerance {
660677 MinWordSizeTypos = new TypoTolerance.TypoSize {
@@ -716,10 +733,16 @@ reset_pagination_settings_1: |-
716733get_faceting_settings_1 : |-
717734 await client.Index("movies").GetFacetingAsync();
718735update_faceting_settings_1 : |-
719- var faceting = new Faceting {
720- MaxValuesPerFacet = 2
736+ var faceting = new Faceting
737+ {
738+ MaxValuesPerFacet = 2,
739+ SortFacetValuesBy = new Dictionary<string, SortFacetValuesByType>
740+ {
741+ ["*"] = SortFacetValuesByType.Alpha,
742+ ["genres"] = SortFacetValuesByType.Count
743+ }
721744 };
722- await client.Index("movies ").UpdateFacetingAsync(faceting);
745+ await client.Index("books ").UpdateFacetingAsync(faceting);
723746reset_faceting_settings_1 : |-
724747 await client.Index("movies").ResetFacetingAsync();
725748multi_search_1 : |-
@@ -782,12 +805,6 @@ distinct_attribute_guide_distinct_parameter_1: |-
782805 Distinct = "sku"
783806 };
784807 await client.Index("products").SearchAsync<Product>("white shirt", params);
785- search_parameter_reference_ranking_score_threshold_1 : |-
786- var params = new SearchQuery()
787- {
788- RankingScoreThreshold = 0.2M
789- };
790- await client.Index("INDEX_NAME").SearchAsync<T>("badman", params);
791808get_dictionary_1 : |-
792809 var indexDictionary = await client.Index("books").GetDictionaryAsync();
793810update_dictionary_1 : |-
@@ -797,6 +814,15 @@ reset_dictionary_1: |-
797814 await client.Index("books").ResetDictionaryAsync();
798815create_snapshot_1 : |-
799816 await client.CreateSnapshotAsync();
817+ facet_search_2 : |-
818+ var newFaceting = new Faceting
819+ {
820+ SortFacetValuesBy = new Dictionary<string, SortFacetValuesByType>
821+ {
822+ ["genres"] = SortFacetValuesByType.Count
823+ }
824+ };
825+ await client.Index("books").UpdateFacetingAsync(newFaceting);
800826facet_search_1 : |-
801827 var query = new SearchFacetsQuery()
802828 {
0 commit comments