2016-04-07 15 views
0

Şu anda, analiz edilen alanı (bir sıralama analizcisi ile birlikte) sıralamak için "AddSortField" in kullanıldığı tüm indeksleme işlemleri için NEST istemcisini kullanıyoruz. Bu seçenek artık 2.X'te mevcut değil gibi görünüyor. Bunun için herhangi bir alternatif var mı? Veya 2.X'te analiz edilen alanların sıralanmasıyla ilgili herhangi bir tavsiye çok takdir edilecektir.Nest AddSortField için İstemci alternatifi 2.x

Not: Güncel NEST ve Elasticsearch versiyonu kullanılıyor 1.X

olduğunu 1.x bir multi_field gibi bir özelliği eşleme için sadece bir kolaylık yöntemidir ANDAE

sayesinde

Pavan

+0

Umarım [bu] (http://stackoverflow.com/questions/36425486/addsortfield-in-nest-2-upgrade/36426602#36426602) cevabı biraz ışık tutacaktır. – Rob

cevap

1

AddSortField sıralanırken kullanılacak sort alt alanı ile; belirtilmemiş string alanları için, bu alan not_analyzed dur.

bir sort alt alan

var descriptor = new CreateIndexDescriptor("myindex") 
    .Mappings(ms => ms 
     .Map<Company>(m => m 
      .Properties(ps => ps 
       .String(s => s 
        .Name(n => n.Name) 
        // map as multi_field 
        .Fields(fs => fs 
         .String(ss => ss 
          .Name("sort") 
          .Index("sortAnalyzer") 
         ) 
        ) 
       ) 
      ) 
     ) 
    ); 

, olur sonra sıralama üzerinde name.sort

ekleyerek, sen use fluent mapping bir multi_field gibi bir özelliği eşlemek edebilir, Nükleer Tehlike 2.x aynı başarmak için
var response = client.Search<Company>(s => s 
    .Query(q => q.MatchAll()) 
    .Sort(ss => ss 
     .Ascending(p => p.Name.Suffix("sort")) 
    ) 
); 
+0

Cevabınız için teşekkür ederiz. –

+0

Endişeye gerek yok. Sorunuzu cevaplarsa, lütfen oy verin ve yanıtı kabul edin –

İlgili konular